.NET中“HttpRequest.RequestType”和“WebRequest.Method”值的常量在哪里?

我需要检查ASP.NET(或WebRequest.Method )中的HttpRequestRequestType 。 我知道我可以使用string值“ POST ”或“ GET ”作为请求types,但是我可以发誓在.NET中的某个类中包含了这些值。

出于好奇,我想知道是否有人知道这些string常量的GETPOST是什么类。我试过在线search,但我没有运气,所以我想我会问这里。

 System.Net.WebRequestMethods.Http .Connect = "CONNECT" .Get = "GET" .Head = "HEAD" .MkCol = "MKCOL" .Post = "POST" .Put = "PUT" 

但最终, 因为constexpression式被烧入调用者,这与使用“GET”等相同,只是没有错字的风险。

也存在可以代替枚举的System.Net.Http.HttpMethod 。 你可以比较他们aMethod == HttpMethod.Get等。要获取string方法名称调用,例如HttpMethod.Get.Method

在ASP.NET MVC中,它们在System.Web.Mvc.HttpVerbs中 。 但是所有使用这些枚举值的方法都有一个文本覆盖,因为没有一组完整的HTTP动词,只有一组当前定义的值(参见这里和这里和这里 )。

您不能创build一个涵盖所有动词的枚举,因为可能会添加动词, 枚举具有版本问题 ,这使得这不切实际。