wake-up-neo.com

Was ist der Unterschied zwischen [AcceptVerbs (HttpVerbs.Post)] und [HttpPost]?

Ich kann eine Aktion entweder mit [AcceptVerbs (HttpVerbs.Post)]/[AcceptVerbs (HttpVerbs.Get)] dekorieren.

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create(string title)
{
    // Do Something...
}

oder mit den Attributen [HttpPost]/[HttpGet]

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

Sind sie anders

76
Lorenzo

Nichts. Eins ist nur eine Abkürzung für das andere.

54
Matthew Manela

[HttpPost] Ist eine Abkürzung für [AcceptVerbs(HttpVerbs.Post)]. Der einzige Unterschied besteht darin, dass Sie [HttpGet, HttpPost] (Und ähnliches) nicht zusammen für dieselbe Aktion verwenden können. Wenn eine Aktion sowohl auf GETs als auch auf POSTs reagieren soll, müssen Sie [AcceptVerbs(HttpVerbs.Get | HttpVerbs.Post)] verwenden.

187