जैसा कि मैं एएसपी.नेट एमवीसी के लिए नया हूं, क्या कोई मुझे return RedirectToAction()
और return View()
के बीच अंतर बता सकता है?पुनर्निर्देशन के बीच अंतर() और देखें()
उत्तर
return View()
एमवीसी को एचटीएमएल प्रदर्शित करने के लिए बताता है और इसे ब्राउज़र पर भेजता है।
RedirectToAction()
एएसपी.नेट एमवीसी को एचटीएमएल को प्रस्तुत करने के बजाए एक अलग कार्रवाई पर पुनर्निर्देशित ब्राउज़र के साथ जवाब देने के लिए कहता है। ब्राउज़र को पुनर्निर्देशन अधिसूचना प्राप्त होगी और नई कार्रवाई के लिए एक और अनुरोध करेगा।
एक उदाहरण ...
मान लीजिए कि आप डेटा इकट्ठा करने और बचाने के लिए एक फार्म का निर्माण कर रहे हैं, अपने URL SomeEntity/Edit/23
तरह दिखता है। संपादन कार्रवाई में आप डेटा एकत्र करने के लिए इनपुट फ़ील्ड के साथ एक फॉर्म प्रस्तुत करने के लिए return View()
करेंगे।
इस उदाहरण के लिए मान लें कि डेटा की सफलतापूर्वक सहेजने पर आप सहेजे गए डेटा को प्रदर्शित करना चाहते हैं। उपयोगकर्ता के सबमिट किए गए डेटा को संसाधित करने के बाद, यदि आप RedirectToAction("Index")
जैसे कुछ करते हैं जहां इंडेक्स वह कार्य है जो डेटा प्रदर्शित करेगा। /SomeEntity/Index/23
पर जाने के लिए ब्राउजर को HTTP 302 (अस्थायी रीडायरेक्ट) मिलेगा।
- वापसी
View
एक नया अनुरोध नहीं है, यह सिर्फ दृश्य renders ब्राउज़र की पता पट्टी में URL को बदलने के बिना। - वापसी
RedirectToAction
एक नया अनुरोध करता है और ब्राउज़र के पता बार में यूआरएल एमवीसी द्वारा जेनरेट किए गए यूआरएल के साथ अद्यतन किया जाता है। - रिटर्न
Redirect
भी एक नया अनुरोध करता है और ब्राउज़र के पते में यूआरएल बार अपडेट किया गया है, लेकिन आपको पूरा यूआरएल निर्दिष्ट करना होगा। RedirectToRoute
रूट तालिका में परिभाषित निर्दिष्ट मार्ग पर रीडायरेक्ट करता है।
RedirectToAction
और Redirect
के बीच, सबसे अच्छा अभ्यास अपने आवेदन कार्यों/नियंत्रकों के साथ काम कुछ भी RedirectToAction
उपयोग करने के लिए है। यदि आप Redirect
का उपयोग करते हैं और यूआरएल प्रदान करते हैं, तो आप को रूट तालिका बदलने पर मैन्युअल रूप से उन यूआरएल को संशोधित करने की आवश्यकता होगी।
उपरोक्त सभी उत्तरों के अतिरिक्त, यदि आप डेटा एनोटेशन का उपयोग करके कार्यान्वयन सत्यापन का उपयोग कर रहे हैं, तो RedirectToAction()
के बजाय return View()
का उपयोग करें।
प्रमाणीकरण संदेश RedirectToAction का उपयोग नहीं करेगा क्योंकि यह मॉडल मान्य नहीं है जो वैध नहीं है और आपका सत्यापन संदेश आपके दृश्य पर भी नहीं दिखाया जाएगा।
- 1. AppDelegate.m के बीच अंतर और नियंत्रक देखें।
- 2. मॉडल के बीच अंतर और मॉडल देखें
- 3. "। +" और "। +?" के बीच अंतर
- 4. Java.io.PrintWriter और java.io.BufferedWriter के बीच अंतर?
- 5. AJAX के बीच अंतर और
- 6. CMake: $ {} और के बीच अंतर "$ {}"
- 7. ऑब्जेक्ट और * के बीच अंतर?
- 8. $ के बीच अंतर? और PowerShell
- 9. == और मामले के बीच अंतर?
- 10. "या" और "||" के बीच अंतर
- 11. वीबीए: और + के बीच अंतर
- 12. jQuery AJAX स्थिति 200 के रूप में पुनर्निर्देशन देखें 302?
- 13. पुनर्निर्देशन और vim
- 14. Msxml2.ServerXMLHTTP और WinHttp.WinHttpRequest के बीच अंतर?
- 15. एचटीएमएल के बीच अंतर (यदि कोई है) क्या है (देखें, मॉडल) और एचटीएमएल। एमवीसी 2 में रेंडरपार्टियल (देखें, मॉडल)?
- 16. पैरामीटर परिभाषाओं के बीच अंतर (प्रकार और नाम), और (प्रकार * नाम) के बीच अंतर क्या हैं?
- 17. पोस्टबैक डेटा के बीच क्या अंतर है और राज्य डेटा देखें
- 18. संबंधों के बीच और कहां के बीच अंतर
- 19. BOOST_CHECK_CLOSE और BOOST_CHECK_CLOSE_FRACTION के बीच अंतर?
- 20. शून्य के बीच अंतर? और खाली? योजना
- 21. मूल्य और वस्तु के बीच अंतर
- 22. कंपास और सास के बीच अंतर?
- 23. स्ट्रॉन्ग और कमजोर आईबीओटलेट्स के बीच अंतर
- 24. COM और DCOM के बीच अंतर?
- 25. "coroutine" और "धागा" के बीच अंतर?
- 26. जेपीए और जेडीओ के बीच अंतर?
- 27. स्ट्रिंग [] ए और स्ट्रिंग के बीच अंतर ...
- 28. फ़ैक्टर और एंडोफंक्चर के बीच अंतर
- 29. वेबसाइट और वेब अनुप्रयोग के बीच अंतर?
- 30. एचटीएमएल.रेंडरएक्शन और एचटीएमएल के बीच अंतर। एक्शन
रीडायरेक्ट टॉक्शन का उपयोग पीआरजी पैटर्न को लागू करने के लिए भी किया जाता है – Tassadaque