[AcceptVerbs(HttpVerbs.Post)]和[HttpPost]有什么区别?

时间:2010-10-02 00:39:34

标签: asp.net-mvc asp.net-mvc-2 http-post http-get

我可以使用[AcceptVerbs(HttpVerbs.Post)] / [AcceptVerbs(HttpVerbs.Get)]

来装饰动作
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create(string title)
{
    // Do Something...
}

或使用[HttpPost] / [HttpGet]属性

[HttpPost]
public ActionResult Create(string title)
{
    // Do Something...
}

它们有什么不同吗?

2 个答案:

答案 0 :(得分:181)

[HttpPost][AcceptVerbs(HttpVerbs.Post)]的简写。唯一的区别是你不能在同一个动作上一起使用[HttpGet, HttpPost](和类似的)。如果您希望操作响应GET和POST,则必须使用[AcceptVerbs(HttpVerbs.Get | HttpVerbs.Post)]

答案 1 :(得分:54)

无。一个是另一个的简写。