【c# – Control.Invoke展开外部异常并传播内部异常】教程文章相关的互联网学习教程文章

c# – 在获取未处理的异常时,添加web.config键以始终重定向【代码】

我曾经看到,只要找到未处理的异常,就可以在web.config文件中添加一个键来重定向到默认的错误页面. 可能吗?怎么样?解决方法:在您的web.config中添加一个CustomErrors部分.<customErrors defaultRedirect="ErrorPage.aspx" mode="RemoteOnly" />

PHP异常处理与C#【代码】

这是一个非常基本的问题(我希望).我所做的大多数异常处理都是使用c#.在c#中,try catch块中出错的任何代码都由catch代码处理.例如try {int divByZero=45/0; } catch(Exception ex) {errorCode.text=ex.message(); }该错误将显示在errorCode.text中.如果我尝试在php中运行相同的代码但是:try{$divByZero=45/0;} catch(Exception ex) {echo ex->getMessage(); }捕获代码未运行.根据我的理解,php需要一个抛出.这不是打败错误检查的全部...

C#异常捕获使用try..catch块【代码】

我是C#的新手,希望更好地理解异常捕获.这些问题可能是愚蠢的菜鸟问题.它们对我很重要,我提前道歉. 例如,在System.IO Path类GetFullPath中,可以抛出五个异常:ArgumentException,SecurityException,ArgumentNullException,NotSupportedException和PathTooLongException.我知道必须组织catch块,以便首先捕获最具体的异常,最后捕获最常见的异常. 问题1:当MSDN提供有关类抛出的可能异常的信息时,如何知道哪个异常最具体,哪个异常最少?...

c# – 无法在visual studio中更改异常的前景色

我正在尝试修复Resharper Sons of Obsidian Color scheme中的错误,该错误突出显示为无法读取的海军蓝的例外情况.我已经通过所有的颜色组合进行了搜索,但似乎无法隔离颜色. 我也安装了VSCommands,我试图禁用所有文本处理以删除它可能正在执行的任何突出显示. 请让我知道如何将其设置为正常颜色.解决方法:您是否看到所有异常的颜色,或仅仅是NotImplementedException? 默认情况下,ReSharper设置类似“TODO”项目(工具|选项|字体和颜色...

c# – 使用DTO时如何处理异常【代码】

我有一个解决方案结构,其中契约(数据/服务等)与业务实体位于不同的项目中,我使用Automapper在第三个服务实现项目之间进行映射.WCFProject.Service.BusinessLayer WCFProject.Service.Contracts WCFProject.Service.Impl我的ServiceImpl引用了这两个其他项目,从DataContract到BusinessEntity的自动化在这里完成,然后在BusinessEntity对象上调用正确的方法 现在,我想添加一些FaultContracts,然后在我的业务逻辑中使用它们来抛出正确的...

c# – 什么是条件后异常?【代码】

我正在做一些有问题的作业: 您如何处理先决条件异常?你会如何使用条件后例外? 因此,对于第一个问题,我假设必须满足前提条件才能运行函数.例如,参数不能为null,我们可以抛出异常:if (myArg == null)throw new ArgumentNullException("myArg"); //do work here但是,我无法弄清楚后置条件异常的用途是什么,以及为什么我们希望在这种情况下抛出异常(例如,如果不满足条件,则不要返回false). 有人可以为此提供一个例子吗?解决方法:后...

c#使用try-catch捕获异常的最佳实践?【代码】

假设我需要运行methodA,而methodA将抛出FormatException. 如果我写这个块:try {methodA(); } catch (Exception ex) {methodB(); } catch (FormatException ex) {methodC(); }它是否会运行methodC,知道FormatException也是一个Exception,因此将进入methodB的catchblock. 或者这样写它更好:try {methodA(); } catch (Exception ex) {if(ex is FormatException){methodC();} else{methodB();} }解决方法:不,它不会运行methodC,但是如...

c# – 字符串长度超过32768个字符时的Azure存储异常【代码】

我的应用程序是ASP.NET Core 1.0 Web API.如果我的控制器返回一个小字符串,一切正常.但是如果字符串长度超过32768,我收到以下错误消息:--- End of stack trace previous location where exception was thrown --- ?? at System.Runtime.CompillerServices.TaskAwaiter.ThrowForNonSuccess(Task task) ?? at System.Runtime.CompillerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) ?? at Microsoft.As...

c# – BackgroundWorker OnWorkCompleted抛出跨线程异常【代码】

我有一个简单的UserControl用于数据库分页,它使用控制器来执行实际的DAL调用.我使用BackgroundWorker来执行繁重的工作,并在OnWorkCompleted事件上重新启用一些按钮,更改TextBox.Text属性并为父窗体引发事件. 表单A保存我的UserControl.当我点击打开表单B的某个按钮时,即使我没有做任何“那里”并且只是关闭它,并尝试从我的数据库引入下一页,OnWorkCompleted会在工作线程上被调用(而不是我的主线程),并抛出一个跨线程异常. 目前我在...

c# – 如何在发送邮件时捕获特定的异常?【代码】

我有以下代码try {if (!bDebug)smtp.Send(m); } catch (Exception e) {wl("Meldingen kunne ikke sendes til en eller flere mottakere.", ConsoleColor.Red);wl(e.Message, ConsoleColor.DarkRed);using (var errorfile = System.IO.File.CreateText("error-" + DateTime.Now.Ticks + ".txt")){errorfile.WriteLine(e.StackTrace);if (e.GetType() == typeof(SmtpFailedRecipientException)){var se = (SmtpFailedRecipientExcept...

c# – 如何确定其参照完整性违规异常【代码】

我想要一种方法来检查我的catch {}子句,如果异常是由于参照完整性违规造成的,那么我现在通过下面的方法;有没有更好/更优雅/更合适的方法来确定它是否是一个参照完整性例外?public static bool IsReferencialIntegrityExcpetion(this Exception exception){return exception is SqlException &&exception.Message.Contains("The DELETE statement conflicted with the REFERENCE constraint ");}解决方法:你能做的最好的就是赶上Sq...

c# – 正在关闭应用程序对象的异常【代码】

我正在使用多个Windows窗体和多个Element宿主对象开发Excel加载项以包含WPF控件.我还有一个调用Web服务的表单.并将结果显示回Excel. 我目前面临的问题是当前:在与插件进行一些交互后(没有找到特定的顺序),我的插件停止正常运行,在PresentationFramework.dll中的某处抛出了无效的操作异常.我无法检查那里运行的代码,因为它是隐藏的. Exception表示如下:“应用程序对象正在关闭”. 可能是什么导致了这个? 它是在用于某些自定义绘图...

如何在c#中抛出静默异常?【代码】

我有一个绑定到ComboBox的属性<ComboBox ItemsSource="{Binding AvailableTypes}"SelectedValue="{Binding Kind, Mode=TwoWay}}"/>在属性设置器中,我在某些业务情况下抛出异常以中止设置属性.public MyKind Kind{get { return kind; }set {if (kind != value){if (SomeRuleFailed(value))throw new Exception("to be ate by binding code");kind = value;}}}它工作顺利,除了每次我引发异常时VS2010弹出的事实.是否有任何异常要提升...

C#.net中的超时异常【代码】

public DataTable GetDailycardReport(DailyReportPL dailyreportpl){DataTable dtGetDailycardReport = new DataTable();try{SqlParameter[] arParams = new SqlParameter[2];arParams[0] = new SqlParameter("@farmername", typeof(string));arParams[0].Value = dailyreportpl.farmername;arParams[1] = new SqlParameter("@batchno", typeof(int));arParams[1].Value = dailyreportpl.batchno;dtGetDailycardReport.Load(SqlHe...

将异常传递到ASP.net/C#中的错误屏幕【代码】

来自桌面背景我不确定如何将我捕到的异常传递给错误页面,以避免我的用户看到标准异常屏幕. 我的一般问题是如何将异常从第X页传递到ASP.net中的错误页面?解决方法:我建议使用web.config中的customErrors部分:<customErrors mode="RemoteOnly" defaultRedirect="/error.html"><error statusCode="403" redirect="/accessdenied.html" /><error statusCode="404" redirect="/pagenotfound.html" /></customErrors>然后使用ELMAH发送...