В чем разница между [AcceptVerbs (HttpVerbs.Post)] и [HttpPost]? - PullRequest
76 голосов
/ 02 октября 2010

Я могу украсить действие либо с помощью [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 ]

184 голосов
/ 16 апреля 2013

[HttpPost] - сокращение от [AcceptVerbs(HttpVerbs.Post)].Разница лишь в том, что вы не можете использовать [HttpGet, HttpPost] (и аналогичные) вместе в одном действии.Если вы хотите, чтобы действие реагировало как на GET, так и на POST, вы должны использовать [AcceptVerbs(HttpVerbs.Get | HttpVerbs.Post)].

54 голосов
/ 02 октября 2010

Ничего.Одно просто сокращение для другого.

...