<customerrors mode =“RemoteOnly”>行为</customerrors>的等效实现

时间:2012-03-14 08:49:43

标签: c# asp.net

msdn网站,我知道 customErrors 元素提供有关ASP.NET应用程序的自定义错误消息的信息。 模式属性的 RemoteOnly 值指定仅向远程客户端显示自定义错误,并向本地主机。

在c#侧,如何实现,某些逻辑仅调用远程客户端,而其他逻辑调用本地主机(检查此条件的c#代码将从Global.asax.cs Application_Error级别调用)?

2 个答案:

答案 0 :(得分:5)

我找到了解决方案。

我不知道HttpRequest类型具有IsLocal属性的事实。我使用dotPeek检查了System.Web程序集,以实现System.Web.Configuration.CustomErrorsSection。我发现RemoteOnly模式使用了IsLocal属性。其值表示请求是否来自本地计算机。

protected void Application_Error(object sender, EventArgs e)
{
    if(Context.Request.IsLocal)
    {
        //do stuff
    }
} 

答案 1 :(得分:0)

您可以为特定文件夹使用单独的Web.Config,并覆盖此特定文件夹配置文件的主Web配置值