ASP.NET MVC配置文件!允许调试

时间:2012-02-10 09:37:30

标签: asp.net-mvc configuration web-config

我是stackOverflow&的新手。 MVC3也是如此!

我托管了一个应用程序,它将我重定向到errorPage(InternalError.htm):正如我在配置文件中配置的那样!但我想更改此设置,以显示错误消息,如

line 23 : //exception Or Error here

有人可以提醒我标签和要添加的属性吗? debut = true ???哪里???等等 亲切的问候!

3 个答案:

答案 0 :(得分:1)

您可以使用customErrors mode="RemoteOnly",如果您使用的是本地计算机,则会看到错误

<system.web>
    <customErrors mode="RemoteOnly" defaultRedirect="~/system/Error/FriendlyError">
      <error statusCode="403" redirect="~/system/Error/accessDenied" />
    </customErrors>
</system.web>

答案 1 :(得分:1)

我使用了自定义错误处理程序。

将以下代码添加到 Global.asax.cs

    protected void Application_Error()
    {
        // if the debugger is attached, do not show the custom error page
        if (System.Diagnostics.Debugger.IsAttached)
        {
            return;
        }

        try
        {
            Exception exception = Server.GetLastError();
            Response.Clear();
            Server.ClearError();
            RouteData routeData = new RouteData();
            routeData.Values["controller"] = "MyCustomErrorController";
            routeData.Values["action"] = "Index";
            routeData.Values["exception"] = exception;

            IController errorsController = new MyCustomErrorController();
            var rc = new RequestContext(new HttpContextWrapper(Context), routeData);
            errorsController.Execute(rc);
        }
        catch (Exception ex)
        {
            // if an error occurs within this method, do nothing
            // app will automatically show the browser's default error page
        }
    }

如果用户是超级用户,我还在错误页面中添加了自定义代码以显示异常详细信息。因此,如果我不处于调试模式或现场网站,我可以轻松查看错误详细信息(如果我以管理员身份登录)。

为了更好地理解代码,谷歌或使用调试器逐步完成。

答案 2 :(得分:0)

您正在寻找customErrors属性(MSDN)。

<customErrors defaultRedirect="url"
              mode="On|Off|RemoteOnly">
     <error. . ./>
</customErrors>

在本地开发计算机上,您可以将其设置为OffRemoteOnly。在您的生产计算机上,您将其设置为OnRemoteOnly

在您的情况下,如果将其设置为RemoteOnly,则可以在将桌面远程连接到生产计算机时看到异常详细信息。如果不可能,只需将其切换为Off