ASP.NET:设置一个十进制值Response.StatusCode

时间:2011-10-29 02:00:54

标签: c# asp.net http iis

这次简单的问题,在ASP.NET中有没有办法设置十进制值HTTP状态代码而不是普通的int状态代码?

示例,我想设置“403.4 SSL required”而不是403 ......

谢谢:)


**编辑

下面的评论指出了我正确的方向,我只需要设置Response.SubStatusCode。

3 个答案:

答案 0 :(得分:4)

通过标准HTTP仅定义3位数字结果代码。您所看到的是IIS特定的,它是子状态代码,可以从HttpResponse.SubStatusCode属性设置和读取。

来自MSDN:

  

SubStatusCode属性仅受集成支持   IIS 7.0中的管道模式以及至少.NET Framework 3.0版。   设置SubStatusCode属性时,将在IIS上记录状态   7.0如果配置了失败请求跟踪。无论是否配置了跟踪,代码都不会作为最终的一部分发送   对请求的回应。有关更多信息,请参阅疑难解答   IIS 7.0中使用失败的请求跟踪失败的请求。

答案 1 :(得分:0)

没有十进制HTTP Status Code这样的东西。

无论您想要完成什么,都不是使用HTTP状态代码。

答案 2 :(得分:0)

没有。 RFC 2616 section 6.1.1表示它必须是“3位整数结果代码。”