首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >无法在ASP.NET MVC网站中获取详细的错误信息

无法在ASP.NET MVC网站中获取详细的错误信息
EN

Stack Overflow用户
提问于 2012-01-30 22:59:39
回答 4查看 18.1K关注 0票数 18

我刚刚在我们的临时服务器上部署了一个ASP.NET MVC3应用程序。每当发生错误时,我都无法获得详细的错误信息,即“死亡的黄屏”。相反,我只得到一个简单的“对不起,处理您的请求时出错”。消息。

我的Web.config包含customErrors off,即:

代码语言:javascript
复制
<system.web>
  <compilation debug="true" targetFramework="4.0">
    <assemblies>
      ...
    </assemblies>
  </compilation>
  <customErrors mode="off"/>
</system.web>

在这种情况下,我确切地知道潜在的错误是什么。(我忘记设置存储过程的权限。)但我真的想(重新)启用错误处理,这样我就可以快速找到这些But。当然,为了安全起见,一旦我们真正上线,我就会删除它。

有哪些其他设置可能会覆盖默认的ASP.NET错误处理?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-01-30 23:10:14

代码语言:javascript
复制
<customErrors mode="Off"/>

"Off"必须正确大写。

来自"Editing ASP.NET Configuration Files":

区分大小写

因为标记必须是格式良好的XML,所以标记、子标记和属性区分大小写。标记名和属性名是驼峰大小写的,这意味着标记名的第一个字符是小写的,任何后续连接的单词的第一个字母都是大写的。在大多数情况下,字符串属性值是Pascal-case,这意味着第一个字符是大写的,任何后续连接的单词的第一个字母都是大写的。异常分为true和false,它们总是小写。

记住,孩子们,你们每天都会学到新的东西。即使你学到的东西很差劲。

票数 34
EN

Stack Overflow用户

发布于 2012-01-30 23:07:22

您的Global.asax.cs文件中可能有HandleErrorAttribute全局过滤器。去掉那行。

代码语言:javascript
复制
    public static void RegisterGlobalFilters(GlobalFilterCollection filters)
    {
        filters.Add(new HandleErrorAttribute());
    }
票数 7
EN

Stack Overflow用户

发布于 2012-01-30 23:19:32

一个更好的长期解决方案可能是将Elmah添加到您的项目中,它将详细的日志记录添加到您的web项目中。

包括:

  • 记录几乎所有未处理的异常。
  • 远程查看记录的异常的整个日志的网页。
  • 远程查看任何记录的异常的完整详细信息的网页,包括彩色堆栈跟踪。
  • 在许多情况下,您可以查看ASP.NET为给定异常生成的原始黄屏死亡,即使在customErrors模式关闭的情况下也是如此。
  • 发生每个错误时的电子邮件通知。
  • 日志中最近15个错误的RSS源。

F214

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9065866

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档