1

我们开发了一个使用 MVC、C# 和 jQuery 的网站。在我的一个控制器类中,我们正在验证来自用户的输入,如果失败,我们将抛出 Ajax 错误参数(又名选项)处理的异常。(我们使用 Block UI 来显示错误消息。BlockUI 是一个 jQuery 插件,它会阻止屏幕并显示消息框。)(是的,消息中有文本,没有有趣的字符或无意义的)

在本地或服务器上运行网站时,我们会从抛出的异常中收到不同的效果。

本地:在 BlockUI 中显示正确的异常。服务器:显示消息“运行时错误”而不是异常消息。

print(  
    public ActionResult FailUpdateStatus(string id)
    {
        string message = Request.Form["message"];

        throw new Exception(message);
    }
);

我已经能够在服务器上运行该网站并远程附加到该网站。在调试异常时,它应该被抛出,但阻止 UI 显示运行时错误。

有任何想法吗?

4

1 回答 1

2

默认情况下,ASP.NET Web 应用程序将对访问该站点的远程计算机隐藏错误,并且只会返回通用的“运行时错误”。ASP.NET 只会在本地访问站点时显示特定于应用程序的错误消息(即,如果 ASP.NET 应用程序服务器正在本地开发机器上运行,或者如果您在托管 ASP.NET Web 的服务器上打开 Web 浏览器)应用)。

要查看从本地客户端在远程服务器上生成的消息,请将以下代码添加到您的 web.config 文件中。

<configuration><system.web><customErrors mode="Off"/></system.web></configuration>
于 2008-09-29T19:16:11.453 回答