C# 如何在使用MVC4WebAPI Restful服务时从IIS 7.5获取详细的错误消息?

C# 如何在使用MVC4WebAPI Restful服务时从IIS 7.5获取详细的错误消息?,c#,asp.net-mvc,C#,Asp.net Mvc,假设我在控制器中有一个工作方法。伪代码可以是: public IEnumerable<ViewMP3> MyMP3(string token, string id) { using (ControlDbContext db = new MyDbContext()) { List<ViewMP3> list = ...some list linq statement return list; }} public IEnumerable MyMP3(字符串标记,字符串i

假设我在控制器中有一个工作方法。伪代码可以是:

public IEnumerable<ViewMP3> MyMP3(string token, string id)
{ 
using (ControlDbContext db = new MyDbContext())
{ List<ViewMP3> list = ...some list linq statement

return list;
}}
public IEnumerable MyMP3(字符串标记,字符串id)
{ 
使用(ControlDbContext db=new MyDbContext())
{List List=…某些List linq语句
退货清单;
}}
我使用HttpClient使用WebAPI,没有产生任何错误。 现在,假设我故意抛出一个错误: 抛出新的ArgumentException(“hello”)//插入上述方法

如何才能获得真正详细的错误消息。我能得到的只是IIS 7.5详细错误-500.0-内部服务器错误。注意:为了不混淆问题,我将WebAPI服务的错误输出以字符串形式传递回客户端。该错误源于服务内部,但只会产生500.0错误。通常会返回JSON,但当设置了已知的错误条件时,我会更改代码以获取字符串格式的响应并将其传递给客户端。这就是我如何知道错误包含的内容

我已尝试启用“将错误发送到浏览器”。我已将IIS错误页功能设置更改为详细错误。我已将Web.Config更改为包含

<customErrors mode="Off" />
<compilation debug="true" targetFramework="4.0" />


.
我已授予IIS_IUSRS对包含web文件的文件夹的权限

我在当天早些时候遇到了一个真正的错误,由于通用的500.0错误,几乎无法排除故障。你知道我还能做些什么来获取详细的错误消息吗


谢谢

也许这会有帮助:Quintium,我在链接中应用了这个概念,它成功了。这给我上了一堂关于错误处理和服务的好课。如果我把代码int y=0;int x=0/y;在我的WebAPI服务中,并从客户端调用它,出现错误500。如果我将其包装在try/catch中,则返回一个被零除的错误。这正是我所需要的。我想你会把这个作为答案贴出来,我会接受吗?请告诉我。谢谢你的帮助!很高兴听到它起作用了,Richard。评论的回答是:哦。。看起来像是作为评论添加的。。我的坏朋友好像不行。它将“琐碎的答案”转换为注释。所以现在一切正常:)
<httpErrors errorMode="Detailed">
<remove statusCode="500" subStatusCode="-1" />
</httpErrors> .