asp.net mvc - [HttpPost/HttpGet]与[AcceptVerbs(HttpVerbs.Post/Get)]

r.r*_*r.r 42 asp.net-mvc

这些东西是一样的吗?

[HttpPost/HttpGet] vs. [AcceptVerbs(HttpVerbs.Post/Get)]
Run Code Online (Sandbox Code Playgroud)

如果没有区别的话?

Dar*_*rov 55

是的,绝对一样.[HttpPost/HttpGet]在ASP.NET MVC 2中引入了以减少我们必须键入的键击:-) [AcceptVerbs(HttpVerbs.Post/Get)]仍然可以使用并且行为相同但是如果你正在编写新代码我会推荐第一个.


ras*_*ghp 23

是的它们是相同的但是对于较新的版本,您只能通过一个动词接受请求.使用[AcceptVerbs(HttpVerbs.Post | HttpVerbs.Get | HttpVerbs.Delete)]你可以接受2个或更多.您也可以使用[AcceptVerbs]接受不属于HttpVerbs枚举的其他动词- 例如.[AcceptVerbs("Trace")].

我不确定为什么你需要使用这个功能,但你可以随心所欲.