Was ist der Unterschied zwischen [AcceptVerbs (HttpVerbs.Post)] und [HttpPost]?
Ich dekorieren kann eine Aktion, die entweder mit der [AcceptVerbs(HttpVerbs.Post)]/[AcceptVerbs(HttpVerbs.Holen Sie sich)]
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create(string title)
{
//Do Something...
}
oder mit der [HttpPost]/[HttpGet] Attribute
[HttpPost]
public ActionResult Create(string title)
{
//Do Something...
}
Sind Sie unterschiedlich?
Kommentar zu dem Problem
HttpPost ist MVC 2.0+, und als Matthew sagte, seine nur kurze hand
wie sind Ausdrücke wie [HttpPost] genannt, in asp net mvc? Dekorateure?
@andi Sie werden als "Attribute" msdn.microsoft.com/en-us/library/z0w1kczw.aspx
Ich habe festgestellt, dass
[AcceptVerbs("GET")]
stoppen kann, ein Eintrag für die Aktion generiert wird, in der Hilfe-Dokumentation. InformationsquelleAutor der Frage Lorenzo | 2010-10-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nichts. Man ist nur ein Kürzel für die andere.
InformationsquelleAutor der Antwort Matthew Manela
[HttpPost]
ist die Kurzform für[AcceptVerbs(HttpVerbs.Post)]
. Der einzige Unterschied ist, dass Sie nicht verwenden können[HttpGet, HttpPost]
(und ähnliche) zusammen auf der gleichen Aktion. Wenn Sie möchten, eine Aktion zu reagieren, um beide Bekommt, und Bucht, müssen Sie[AcceptVerbs(HttpVerbs.Get | HttpVerbs.Post)]
.InformationsquelleAutor der Antwort Rudresha Parameshappa
Wenn wir eine bestimmte Handlung zu unterstützen mehr als einen HTTP-Methode, die wir verwenden können, die [AcceptVerbs] - Attribut.
[AcceptVerbs("POST", "PUT")]
öffentliche IHttpActionResult Create(string booktitle)
{
//Erstellt ein Buch aufgrund des Titels
zurück Ok();
}
InformationsquelleAutor der Antwort Raj Chaurasia