加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc-3 – 如何在本地测试时禁用elmah发送电子邮件?

发布时间:2020-12-15 20:58:42 所属栏目:asp.Net 来源:网络整理
导读:当我们将以下行添加到web.config时 – add name="ErrorMail" type="Elmah.ErrorMailModule,Elmah" / Elmah发送有关正在发生的任何异常的电子邮件.但我们希望这只发生在Web服务器上部署的实时站点.而不是当我们在我们的机器上本地测试网站时.当前它正在这样做
当我们将以下行添加到web.config时 –
<add name="ErrorMail" type="Elmah.ErrorMailModule,Elmah" />

Elmah发送有关正在发生的任何异常的电子邮件.但我们希望这只发生在Web服务器上部署的实时站点.而不是当我们在我们的机器上本地测试网站时.当前它正在这样做并在我们在本地测试网站时发送电子邮件.有谁知道我们如何配置它?

解决方法

将电子邮件日志记录添加到Web.Release.config.我的基础Web.config根本不包含任何Elmah东西 – 在使用release进行编译时都会添加它们.如果您编译发布并在本地运行,它将通过电子邮件发送和登录,但常规调试版本不会.

Web.Release.config

<configSections>
      <sectionGroup name="elmah" xdt:Transform="Insert">
          <section name="security" requirePermission="false" type="Elmah.SecuritySectionHandler,Elmah" />
          <section name="errorLog" requirePermission="false" type="Elmah.ErrorLogSectionHandler,Elmah" />
          <section name="errorMail" requirePermission="false" type="Elmah.ErrorMailSectionHandler,Elmah" />
          <section name="errorFilter" requirePermission="false" type="Elmah.ErrorFilterSectionHandler,Elmah" />
      </sectionGroup>
  </configSections>

  <connectionStrings>
    <clear/>
      <add xdt:Transform="Insert" name="ErrorLogs" connectionString="...." />
  </connectionStrings>

  <elmah xdt:Transform="Insert">
      <errorLog type="Elmah.SqlErrorLog,Elmah" connectionStringName="ErrorLogs" />
      <security allowRemoteAccess="0" />
      <errorMail ...Email options ... />
  </elmah>

    <system.web>
        <compilation xdt:Transform="RemoveAttributes(debug)" />

        <httpModules xdt:Transform="Insert">
            <add name="ErrorLog" type="Elmah.ErrorLogModule,Elmah" />
            <add name="ErrorMail" type="Elmah.ErrorMailModule,Elmah" />
        </httpModules>
    </system.web>

    <system.webServer>
        <modules xdt:Transform="Insert" runAllManagedModulesForAllRequests="true">
            <add name="ErrorLog" type="Elmah.ErrorLogModule,Elmah" />
        </modules>
    </system.webServer>

</configuration>

最后,请注意您的基本Web.config应该具有< configSections>标记在开头,即使它是空的:

Web.config文件

<configuration>
  <configSections /><!-- Placeholder for the release to insert into -->
  ....

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读