Ответ 1
Ничего. Один из них просто сокращен для другого.
Я могу украсить действие либо с помощью [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...
}
Разные?
Ничего. Один из них просто сокращен для другого.
[HttpPost]
является сокращением для [AcceptVerbs(HttpVerbs.Post)]
. Единственное отличие состоит в том, что вы не можете использовать [HttpGet, HttpPost]
(и подобное) вместе при одном и том же действии. Если вы хотите, чтобы действие отвечало как на GET, так и на POST, вы должны использовать [AcceptVerbs(HttpVerbs.Get | HttpVerbs.Post)]
.