我的代码使用HttpWebRequest来请求.ASP页面(asp 3.0),URL中包含一些参数。该ASP页面将通过从数据库中获取一些数据来生成PDF。由于ASP代码中的错误,当我尝试从请求中获取响应时,我收到了一个WebException,其中包含IIS的500服务器错误。这很好,但除了500错误之外,异常的消息并没有真正说出来。
如果我复制粘贴我在IE中请求的URL,我会得到一些细节,因为我有友好的错误禁用,IIS配置为将真实的错误文本发送给用户。
“技术信息(支持人员)
错误类型: ADODB.Recordset(0x800A0CC1) 无法在与请求的名称或序号对应的集合中找到项目。 “
我在Exception上做了一个QuickWatch并访问了所有属性,但没有一个包含这些数据。
有没有办法在WebException上获取此信息?
感谢。
答案 0 :(得分:2)
有没有办法在WebException上获取此信息?
是的,您可以阅读回复正文:
try
{
...
}
catch (WebException ex)
{
using (var stream = ex.Response.GetResponseStream())
using (var reader = new StreamReader(stream))
{
string text = reader.ReadToEnd();
// text will contain the response from the server
}
}