【问题标题】:Email errors in a asp.net mvc applicationasp.net mvc 应用程序中的电子邮件错误
【发布时间】:2010-07-30 16:32:21
【问题描述】:

是否有一个地方可以跟踪 asp.net mvc 应用程序中任何未捕获的异常?

我想通过电子邮件发送错误,或写入文件/db。

【问题讨论】:

    标签: asp.net asp.net-mvc error-handling


    【解决方案1】:

    对于任何日志记录/邮件发送/发生异常时您想要执行的任何操作,您应该查看 Web.config 文件中的应用程序运行状况配置 (described here)。

    在您的情况下(发生异常时发送邮件),您可以将 SimpleMailWebEventProvider 提供程序与预定义的“所有错误”事件一起使用,例如以下示例:

    <healthMonitoring enabled="false" heartbeatInterval="0">
      <providers>
        <add name="notifyAppDev" type="System.Web.Management.SimpleMailWebEventProvider" to="admin@mysite.com" from="errors@mysite.fr" subjectPrefix="[WebEvent Error My Site Blabla]" buffer="false" />
      </providers>
      <rules>
        <add name="appDevEvents" eventName="All Errors" provider="notifyAppDev" profile="Critical" minInstances="1" maxLimit="Infinite" minInterval="00:01:00" custom="" />
      </rules>
    </healthMonitoring>
    

    哦,如果您想使用此方法,请不要忘记在 Web.config 文件中配置发送邮件的 SMTP 服务器。

    【讨论】:

    • 是的,ASP.NET MVC 使用与“经典” ASP.NET 相同的核心,并与其他人共享此功能。
    【解决方案2】:

    我推荐 ELMAH。有许多关于如何将其合并到您的 mvc 应用程序中的博客文章。最方便的是使用过滤器,如下所述:http://www.codecapers.com/post/Error-Handling-in-MVC-with-ELMAH.aspx

    【讨论】:

    • url 链接到 url 的主站点,某种方式的垃圾邮件?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-03
    • 1970-01-01
    • 2016-11-17
    • 1970-01-01
    相关资源
    最近更新 更多