2

我开发了很多 ASP.NET Web 表单。在测试期间,我关闭了 customErrors,然后在将表单移入生产环境时出现了 ResponseRedirect 自定义错误。

我想知道是否可以通过更改设置值来简化我的开发。

我想要的只是将我的 Properties.Settings.Default.TestMode 值从开发人员更改为生产,然后打开 customError。

所以我在想我的 Global.asax.cs 代码可能看起来像:

protected void Application_Error(object sender, EventArgs e) {
  if (Properties.Settings.Default.TestMode == "production") {
    Server.ClearError();
    Response.Redirect("errorpage.htm");
  } 
  else {
    // Not sure what it would do here. Nothing?
  }
}

但后来我不确定我的 Web.config 文件中会出现什么。CustomErrors 如下所示。

<!--<customErrors mode="Off" />-->
<customErrors mode="On" defaultRedirect="ErrorPage.htm" redirectMode="ResponseRedirect"/>

现在我只是注释掉/在我需要做出改变的地方。我觉得我一直都在这样做,让我创建的 TestMode 设置完成所有工作会很棒。

4

1 回答 1

1

您想查看Web.Config Transformation。它允许您独立设置开发和生产的特定设置。

这是 Microsoft 的一个很好的介绍:如何:在部署 Web 应用程序项目时转换 Web.config

于 2013-04-04T20:53:31.663 回答