为什么枚举WebExceptionStatus不打算直接在我的代码中使用?

时间:2015-11-24 21:11:17

标签: c# .net webrequest msdn

记录枚举WebExceptionStatus的{​​{3}}说:

  

此API支持产品基础架构,但并非如此   直接从您的代码中使用。

为什么呢?它是公开记录,是确定网络请求失败原因的明显方法。

示例

我正在使用班级WebRequest从网络服务器获取数据。当然,如果在请求期间发生错误,我将不得不进行异常处理。因此,如果出现问题,我想分离协议错误(例如:服务器返回了具有http状态400的响应)来自网络错误(例如:timout)。为此我想要属性Status

try {
  var request = WebRequest.CreateHttp(QueryUri);
  //...
}
catch (WebException exception) {
  if (exception.Status == WebExceptionStatus.ProtocolError) {
    throw new MyCustomServerErrorException(...)
  }

  // ...
}

0 个答案:

没有答案