自定义错误处理程序返回与通用错误处理程序不同的错误

时间:2011-07-11 08:02:46

标签: c# asp.net exception-handling

我的自定义错误处理程序返回:

  

消息:抛出了类型'System.Web.HttpUnhandledException'的异常。

     

来源:System.Web

     

Stack Track:在System.Web.UI.Page.HandleError(Exception e)at   System.Web.UI.Page.ProcessRequestMain(布尔   includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint)   在System.Web.UI.Page.ProcessRequest(布尔值   includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint)   在System.Web.UI.Page.ProcessRequest()处   System.Web.UI.Page.ProcessRequest(HttpContext context)at   ASP.inc_iframe_eventdetail_aspx.ProcessRequest(HttpContext context)中   c:\ Windows \ Microsoft.NET \ Framework64 \ v2.0.50727 \ Temporary ASP.NET   Files \ root \ c30f285f \ 68ea8ff1 \ App_Web_g4uza9zi.4.cs:第0行   System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()   在System.Web.HttpApplication.ExecuteStep(IExecutionStep步骤,   布尔和放大器; completedSynchronously)

     

目标站点:布尔句柄错误(System.Exception)

但是,通用错误处理程序返回:

  

“/”应用程序中的服务器错误。无法启用约束。一行或多行包含违反非null,唯一或外键的值   约束。描述:期间发生了未处理的异常   执行当前的Web请求。请查看堆栈   跟踪以获取有关错误及其来源的更多信息   代码。

     

异常详细信息:System.Data.ConstraintException:无法启用   限制。一行或多行包含违反非null的值,   唯一的或外键约束。

     

来源错误:

     

第44行:ChurchEventDataSource.SelectParameters.Add(“ChurchEventId”,   的Request.QueryString [ “EVENTID”]);第45行:第46行:   EventFormView.DataBind();第47行:休息;第48行:

     

源文件:   c:\ Sites \ Altruistic \ ChurchFinder \ Inc \ iframe \ EventDetail.aspx.cs行:   46

显然,我想要最详细的描述。

1 个答案:

答案 0 :(得分:0)

您的自定义错误处理程序&你是如何检索异常的?很可能您可能正在使用HttpServerUtility.GetLastError方法来获取异常 - 因此在这种情况下使用实际异常对象的InnerException属性(如果不为null) - 它将具有已发生的实际异常。 / p>