.NET WebAPI 正确抛出错误详细信息
2020-11-24 01:07
标签:style blog class code java color 最近把之前的WebAPI项目发布到服务器上,数据库由SQL Server2008 EXPRESS改为SQL
Server2000,但在分页查询时服务器抛出了“500错误”,但却看不到错误的详细信息,按照之前的经验把配置文件的customErrors打开依然看不到详细信息,由于项目是发布在服务器上,没有办法进行调试,且服务器是windows20003,页没有办法进行远程调试,写try…catch…捕捉action中的错误并抛出依然获取不到详细信息,得不到错误详细信息就没有方向对错误进行修改,然后就在网上搜索解决办法,发现WebAPI出现错误,只会抛出500,并不包含详细信息,只有抛出HttpResponseException,才能得到错误的详细信息,这样就好办了,代码如下: 最后根据错误详细信息发现是新版NHibernate不支持SQL Server2000的分页查询了,又装了一个SQL Server2005错误解决。 就在写这篇记录的时候刚想到其实用不着这么麻烦,可以直接把Exception的详细内容输出的,又走弯路了… .NET WebAPI 正确抛出错误详细信息,搜素材,soscw.com .NET WebAPI 正确抛出错误详细信息 标签:style blog class code java color 原文地址:http://www.cnblogs.com/liukemng/p/3716216.htmltry
{
...
}
catch (Exception e) {
//在webapi中要想抛出异常必须这样抛出,否则之抛出一个默认500的异常
var resp = new HttpResponseMessage(HttpStatusCode.InternalServerError)
{
Content = new StringContent(e.ToString()),
ReasonPhrase = "error"
};
throw new HttpResponseException(resp);
}