Mat*_*att 1 c# asp.net casting
我目前正在为应用程序编写一个带有日志记录的通用错误处理程序,它应该从发送者对象中提取有用的信息。
在问我的问题之前,让我先给你一些背景知识:
我为此目的使用的Global.asax 中的Application_Error处理程序定义如下:
protected void Application_Error(Object sender, EventArgs e)
Run Code Online (Sandbox Code Playgroud)
当我在这个方法中设置一个断点时,我通过本地窗口从发送者那里得到了很多有用的信息:
在 type 列中,Visual Studio 建议对象为 type ASP.global_asax
,但这似乎是一种人工类型,因为当我尝试将其转换为
var senderInfo = (ASP.global_asax)sender;
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
CS0246:找不到类型或命名空间“ASP”(您是否缺少 using 指令或程序集引用?)
sender
转换为合适的类类型,其中包含本地窗口显示的所有信息?(请注意,我不需要调试器显示的静态和非公共成员)异常对象:同样,异常对象也可以实现吗?(您可以在exc
System.Exception 类型的屏幕截图中看到,但确切的类型是System.Web.HttpUnhandledException
。这可能特别有用,exc.InnerException
因为在这里我们获得了有关发生此异常的原因的真实信息。)
var exc = Server.GetLastError();
var innerExc = exc.InnerException;
Run Code Online (Sandbox Code Playgroud) 归档时间: |
|
查看次数: |
1371 次 |
最近记录: |