我需要检查RequestType
的HttpRequest
在ASP.NET(或WebRequest.Method
).我知道我可以使用字符串值" POST
"或" GET
"作为请求类型,但我可以发誓在.NET中包含值的某个类中有一个常量.
出于好奇,我想知道是否有人知道这些字符串常量是哪一个阶级GET
和POST
人.我已经试过在网上搜索,但我没有运气,所以我认为我会问这里.
System.Net.WebRequestMethods.Http .Connect = "CONNECT" .Get = "GET" .Head = "HEAD" .MkCol = "MKCOL" .Post = "POST" .Put = "PUT"
但最终; 因为const
表达式被烧入调用者,这与使用"GET"等相同,只是没有拼写错误的风险.
也存在System.Net.Http.HttpMethod
可以代替枚举.您可以比较它们aMethod == HttpMethod.Get
等.要获取字符串方法名称,例如HttpMethod.Get.Method
.
在ASP.NET MVC中,它们位于System.Web.Mvc.HttpVerbs中.但是,所有采用其中一个枚举值的方法也都有文本覆盖,因为没有完整的HTTP谓词集,只有一组当前定义的值(请参见此处以及此处和此处).
您无法创建涵盖所有动词的枚举,因为可能会添加动词,并且枚举具有使这不切实际的版本问题.