Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用ELMAH处理异常-内部异常为NULL_C#_Asp.net Mvc_Elmah - Fatal编程技术网

C# 使用ELMAH处理异常-内部异常为NULL

C# 使用ELMAH处理异常-内部异常为NULL,c#,asp.net-mvc,elmah,C#,Asp.net Mvc,Elmah,我最近刚刚在我公司的一个项目中被安排,该项目在一个使用.NET4.6.2的C#MVC项目中使用ELMAH。我以前从未使用过ELMAH,所以这个问题可能很愚蠢,但我无法在这个网站上或通过谷歌找到这个特定问题的任何答案 该项目使用ELMAH将异常记录到SQL数据库中。数据库表包含应用程序、主机、异常类型、源、消息和AllXml列(以及其他)的字段。绝大多数记录的错误我都理解,我正在进行调试 但是,有一个异常是以系统类型记录的。异常,源列为空,消息仅为,内部异常为空。如果我检查XML,它在开头包含以下

我最近刚刚在我公司的一个项目中被安排,该项目在一个使用.NET4.6.2的C#MVC项目中使用ELMAH。我以前从未使用过ELMAH,所以这个问题可能很愚蠢,但我无法在这个网站上或通过谷歌找到这个特定问题的任何答案

该项目使用ELMAH将异常记录到SQL数据库中。数据库表包含应用程序、主机、异常类型、源、消息和AllXml列(以及其他)的字段。绝大多数记录的错误我都理解,我正在进行调试

但是,有一个异常是以系统类型记录的。异常,源列为空,消息仅为,内部异常为空。如果我检查XML,它在开头包含以下内容:

<error   host="*hostname*"   
         type="System.Exception"   
         message="Inner exception is null"   
         detail="System.Exception: Inner exception is null"   
         user="*logged in user*"   
         time="2019-10-09T10:44:07.9624247Z">

如果我深入研究XML,我可以找到引发异常的确切控制器和方法。但是,特定方法没有
try-catch
块。所以我假设这个方法偶尔会导致一个异常,这个异常是从ELMAH全局捕获的

我的问题是,是否有某种方法可以修改ELMAH配置(从web.config文件、初始化代码等),以便在内部异常为
null
时,我可以找出真正的异常是什么?根据上述错误信息(即仅
系统异常
内部异常消息为空
),我无法确定原因


如有任何帮助、建议或与正在解决的类似报告问题的链接,将不胜感激。提前感谢。

这可能是个愚蠢的问题,但ELMAH不包括抛出异常的堆栈跟踪吗?@ThomasArdal是的,捕获的所有其他异常都包括一个堆栈跟踪,该堆栈跟踪包含在标记的“detail”属性中。但是对于这个问题,“detail”属性只表示“System.Exception:内部异常为null”。这就是为什么我在调试时遇到如此多的麻烦,因为我不知道它是从哪里抛出的。啊,是的,这就是你写的;)您是否尝试过在代码中搜索“内部异常为null”?这不是ELMAH记录到我的知识的东西。我终于找到了它。有一段代码埋在其中一个引用库的深处,它正在编写异常,这就是为什么我无法使用VS中的find控件找到它。事实证明,它是设计用来在WCF服务返回404错误时向数据库写入“内部异常为空”的-尽管如此,请不要问我为什么,因为我不知道…哈哈。谢谢你的帮助,这就是我的观点。有人对这条消息抛出了一个异常:)很高兴你找到了原因