我知道我可以将GetHttpCode()的结果类型转换为HttpStatusCode,但我不喜欢对枚举进行类型转换。特别是因为 MSDN 文档没有明确说明枚举的值始终是确切对应的 http 状态代码。
我觉得GetHttpCode()应该只返回HttpStatusCode。
我应该停止抱怨和打字吗?
catch(HttpException ex)
{
switch((HttpStatusCode)ex.GetHttpCode())
{
case HttpStatusCode.NotFound:
// Do stuff...
break;
// More cases...
}
}
编辑:请注意HttpWebResponse.StatusCode 的类型为HttpStatusCode