2010-06-08 38 views
19

我正在ASP.NET MVC中工作。我使用的是部分视图,但是当我点击特定的链接时,出现以下错误。500 ASP.NET MVC中的内部服务器错误

500内部服务器错误

如何这个错误是固定的?

+0

关闭浏览器中的友好错误消息,并允许在应用程序中进行调试,然后告诉我们错误,以便我们可以更好地帮助您。 – Sev 2010-06-08 09:34:52

+0

这里建议让您的服务器返回更详细的错误信息可能会有所帮助:http://stackoverflow.com/q/5385714/12484 – 2016-06-07 13:37:10

回答

4

500服务器错误意味着脚本发生了错误,这不是一个断开的链接(又名404错误)。

如果您使用的是Internet Explorer,请转至tools > options > advanced并取消选择friendly http errors,这会给您一个更全面的错误说明,以便您可以调试脚本或联系相关人员进行调试。

39

要检查在ASP MVC下导致内部服务器500错误的原因,您还可以在调试模式下运行您的应用程序并检查属性AllErrors。
该属性是Exception类型元素的数组。

为此开Global.asax.cs(C#)和类MvcApplication put方法Application_EndRequest的身体:

protected void Application_EndRequest() 
{ //here breakpoint 
    // under debug mode you can find the exceptions at code: this.Context.AllErrors 
} 

然后设置断点,检查数组的内容:this.Context.AllErrors

它帮助我解决抛出了什么异常,并可选择查看堆栈跟踪。

+0

很好的答案!我试过检查网络标签,但它从来没有给我一个详细的错误。它只是说它没有加载资源。这个解决方案指出我的视图模型的构造函数存在一个问题。谢谢! – usr4896260 2017-03-06 15:15:32

+0

如果我将'this.Context.AllErrors'设为null会怎么样? – 2017-07-29 07:37:17

+0

我试过这个解决方案,但我得到this.Context.AllErrors = null ...所以更多挖掘后,我发现在我的模型,我必然形成我装饰整数属性之一“[MaxLength(6, ErrorMessage =“Pincode应该是有效的。”)]“删除后它对我来说工作得很好。 – 2017-10-04 12:00:49

1

我从Windows事件查看器(运行> eventvwr.msc> Windows日志>应用程序)的错误的详细信息。检查从w3wp.exe记录的警告/错误

在我的情况下,原因是遗漏dll。希望这会有所帮助

相关问题