【访问冲突异常仅在未附加调试器的情况下运行C#app时出现】教程文章相关的互联网学习教程文章

c# – 一个可以抛出异常的方法是否应该在其名称中“抛出”?【代码】

我正在编写一个方法,确保调用者有权执行它.当用户未获得授权时,我必须抛出异常(请参阅下面的代码).该方法的名称应该是什么?public void Compute() {this.CheckIfCallerAuthorizedOrThrow(); // Is it a good name? Better idea?// ... }我想确保读取代码的人理解方法的流程可以通过异常来解决.在这种情况下,使用带有“throw”的方法名称是好的还是坏的做法?解决方法:老实说,方法名称应该准确描述它应该做什么.所以在某种程度上,这...

c# – Winforms毫不客气地退出“未处理的异常”【代码】

程序吐出其中一个框,表示发生了未处理的异常,应用程序必须退出.解决问题的唯一线索就是在事件日志中:Event Type: ErrorEvent Source: .NET Runtime 2.0 Error ReportingEvent Category: NoneEvent ID: 5000Date: 1/9/2009Time: 8:47:44 AMUser: N/AComputer: DADIEHLDescription:EventType clr20r3, P1 crm.client.exe, P2 1.0.1.0, P3 49667f61, P4 mscorlib, P5 2.0.0.0, P6 471ebc5b, P7 c35, P8 59, P9 system.formatexceptio...

c# – 将float.MaxValue转换为Long抛出异常?【代码】

试图获取float.MaxValue的整数部分,但它抛出错误?long l = Convert.ToInt64(float.MaxValue);Console.WriteLine(l);错误:算术运算导致溢出.解决方法:float的最大值为3.4E 38,而long的最大值为9.2E 18.因此,float.MaxValue不适合长. 指定大于Int64.MaxValue或小于Int64.MinValue的值时,Convert.ToInt64方法抛出OverflowException. 如果您只想获取float.MaxValue的整数值,请参阅this question的相关答案.但请注意,即使剥离了浮点,浮...

在C#中“捕获”两种不同类型的异常的两种不同方式.一个比另一个好吗?【代码】

我以前从未需要捕获多个例外.但这是我的情景.我想“尝试”复制文件.如果目的地不存在,我不想被它打扰.但是我仍然希望捕获任何其他类型的异常.例如,UnauthorizedAccessException.以下是我尝试过的两件事,但我已经看到了网上使用的两个例子.是一个比另一个更好的编码.或者我两个都完全错了?谢谢.catch (DirectoryNotFoundException){// Do Nothing}catch (Exception ex){MessageBox.Show(ex.Message);}要么catch (Exception ex){if ...

异常处理C#【代码】

这可能是一个愚蠢的问题,但我想知道我的代码是否在编程上是正确的.private void Connect() {try{// I will do something here}catch(Exception ex){// If something bad happened// I want to ignore the problem and continue the execution// So, nothing will be placed in the catch block} }提前致谢.解决方法:我不建议在任何异常处理中忽略“catch”.你应该养成在出现异常时处理异常的习惯,这是一种很好的做法.但是,如果您需...

c# – 我如何更改Dictionary以便它返回自定义默认值而不是在没有这样的键时抛出异常?

如何改变字典的工作方式,这样如果没有给定键的KVP,它会返回一个默认值,而不用try-catch包装通常的dic [“nonexistentKey”]?解决方法:您可以创建自己的类,其中包含Dictionary< TKey,TValue>,并实现IDictionary< TKey,TValue>. 这将表现得像字典,但您可以编写行为以任何方式处理您不存在的键. 但是,你无法改变实际字典的方式< TKey,TValue>类功能.

c# – 为什么在.net 2.0中向一个原语(即:int)转换null会抛出一个空引用异常而不是一个无效的强制转换异常?【代码】

我正在浏览一些代码并遇到了我的组合框尚未初始化的情况.这是在.NET 2.0中,在下面的代码中,this.cbRegion.SelectedValue为null.int id = (int)this.cbRegion.SelectedValue;此代码抛出了空引用异常,而不是无效的强制转换异常.我想知道是否有人知道为什么它会抛出空引用异常而不是无效的强制转换?解决方法:它与Boxing和拆箱有关.它试图从框中取出一个int(unbox),但该对象为null,因此在获得转换更改之前,您将获得一个空引用异常.

c# – 从导致异常的行继续尝试/捕获异常

抛出异常时,如何捕获它然后从导致错误的行开始继续执行? 编辑:我们的程序与Indesign Server进行通信,Indesign Server一直崩溃并抛出随机的COM相关错误(这些错误与服务器本身的错误有关). Indesign Server也需要很长时间来处理命令,因此当它崩溃时,我们希望避免重新启动执行.相反,我们希望从导致异常的行继续.程序中的任何行都可能导致异常.所以从技术上讲,我们不能使用循环.解决方法:When an exception is thrown, how can I cat...

C#COMponent引发的异常消息是否通过interop传递给C?【代码】

如果我在C#类中实现一个COM接口,它将从C模块调用,那么在发生故障的情况下,C#代码应抛出异常;这将由interop层编组为HRESULT故障代码. 但是,传递给Exception构造函数的任何消息文本(或其他信息)是否也可用于调用C代码?如果是这样,如何获得,即哪种API方法? 例如如果在我的C#代码中我抛出新的ArgumentException(“电子邮件地址无效”)我将除了我的COM HRESULT为E_INVALIDARG但是我的自定义文本将被编组或者我只能查找E_INVALIDARG的文...

c# – 内置异常处理的任务?【代码】

使用任务时,您必须特别注意处理异常,这是一个示例:class Program {static void Main(string[] args){Task<int> task = new Task<int>(Test);task.ContinueWith(ExceptionHandler, TaskContinuationOptions.OnlyOnFaulted);task.Start();Console.ReadLine();}static int Test(){throw new Exception();}static void ExceptionHandler(Task<int> task){var exception = task.Exception;Console.WriteLine(exception);} }从here起 我...

c# – 在docker容器中运行的Identity Server 4异常:无法加载DLL’System.Security.Cryptography.Native.OpenSsl’【代码】

我试图让Identity Server 4在Docker容器中运行ASP.NET Core并继续获得以下异常Unhandled Exception: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.TypeInitializationException: The type initializer for 'Crypto' threw an exception. ---> System.DllNotFoundException: Unable to load DLL 'System.Security.Cryptography.Native.OpenSsl': The spec...

初始化C#的geckoWebBrowser异常【代码】

我的程序如下引发异常. Program.cs如下:static void Main(){Gecko.Xpcom.Initialize("D:\\xulrunner\\");Application.EnableVisualStyles();Application.SetCompatibleTextRenderingDefault(false);Application.Run(new Form1());}Form1.cs如下:private void Form1_Load(object sender, EventArgs e){//Gecko.Xpcom.Initialize("D:\\xulrunner\\");geckoWebBrowser1.Navigate("http://www.google.com");}翻译自中文,例外情况如下...

c# – ASP.NET Web API处理异常返回错误的状态代码【代码】

我有使用ASP.NET Web API 2.0的项目,并在此API中有一个方法抛出异常:public void TestMethod(){throw new Exception("Error40001");}当抛出这个异常时,我已经设置了一个处理这些东西的处理程序:public class APIExceptionHandler : ExceptionHandler {public override void Handle(ExceptionHandlerContext context){var rm = Language.Error.ResourceManager;string message = rm.GetString(context.Exception.Message);string ...

c# – 为什么我得到“无法转换类型的对象”异常?【代码】

我有以下代码public class SortTerm<T> {public System.Func<T, System.IComparable> Sort;public SortDirection Direction;public SortTerm(System.Func<T, System.IComparable> sorter, SortDirection direction){this.Sort = sorter;this.Direction = direction;}public SortTerm(System.Func<T, System.IComparable> sorter): this(sorter, SortDirection.Ascending){ }public static SortTerm<T> Create<TKey>(System.Func<T...

c# – 我们如何在IIS上处理ASP.NET MVC应用程序的异常

下面是我在ASP.NET MVC应用程序中处理异常的方法. >创建了一个基本控制器并重写了OnException方法以捕获所有ASP.NET MVC管道错误.>捕获超出ASP.NET MVC管道的错误.即404 – 我在web.config中使用CustomError标记. 现在,假设我的应用程序已关闭而未运行,那么我仍然希望我的用户显示一些错误页面并希望它在IIS级别进行配置.有谁能请解释我如何实现这一点,我也想知道优先事项.我的意思是我希望IIS错误的优先级应该是最小的.解决方法:...