web-dev-qa-db-ja.com

[AcceptVerbs(HttpVerbs.Post)]と[HttpPost]の違いは何ですか?

[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...
}

彼らは違いますか?

76
Lorenzo

なし。 1つは他の略記です。

54
Matthew Manela

_[HttpPost]_は[AcceptVerbs(HttpVerbs.Post)]の省略形です。唯一の違いは、同じアクションで_[HttpGet, HttpPost]_(および同様の)を一緒に使用できないことです。アクションがGETとPOSTの両方に応答するようにするには、[AcceptVerbs(HttpVerbs.Get | HttpVerbs.Post)]を使用する必要があります。

187