HttpStatusCode
实现为enum
,每个可能的值都分配给相应的HTTP状态代码(例如(int)HttpStatusCode.Ok == 200
)。
但是,HttpMethod
为implemented as a class
,具有静态属性以获取各种HTTP谓词的实例(HttpStatus.GET
,HttpStatus.PUT
等)。 不实施HttpMethod
作为enum
背后的理由是什么?
答案 0 :(得分:21)
来自documentation(强调我的):
<强>说明强>
HttpMethod最常见的用法是使用此类中的一个静态属性。 但是,如果应用程序需要HTTP方法的不同值,则HttpMethod构造函数使用应用程序指定的HTTP方法初始化HttpMethod的新实例。
枚举当然不可能。