asp.net mvc [AcceptVerbs(HttpVerbs.Post)] और[HttpPost] के बीच क्या अंतर है?




asp.net-mvc asp.net-mvc-2 (3)

कुछ भी तो नहीं। एक दूसरे के लिए सिर्फ शॉर्टेंड है।

मैं या तो [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...
}

क्या वे अलग हैं?


अगर हमें एक से अधिक HTTP विधि का समर्थन करने के लिए एक विशिष्ट कार्रवाई की आवश्यकता है, तो हम [AcceptVerbs] विशेषता का उपयोग कर सकते हैं।

[AcceptVerbs ("पोस्ट", "पुट")]
सार्वजनिक IHttpActionResult बनाएँ (स्ट्रिंग बुकटाइटल)
{
// शीर्षक के आधार पर एक पुस्तक बनाता है
ठीक है ();
}


[HttpPost] [AcceptVerbs(HttpVerbs.Post)] लिए लघुरूप है। केवल अंतर यह है कि आप एक ही क्रिया पर [HttpGet, HttpPost] (और इसी तरह) का उपयोग नहीं कर सकते हैं। यदि आप जीईटी और पीओएसटी दोनों को प्रतिक्रिया देने के लिए एक कार्रवाई चाहते हैं, तो आपको [AcceptVerbs(HttpVerbs.Get | HttpVerbs.Post)] उपयोग करना होगा।