में Html.BeginForm का उपयोग क्या है MVC3 में Html.BeginForm का उपयोग क्या है। हम इसका उपयोग क्यों करते हैं, जब हम सीधे एक फॉर्म टैग जोड़ सकते हैं, क्या यह HTML सहायक कुछ क्षमता जोड़ता है या ऐसा कुछ करता है जो एक साधारण फ़ॉर्म टैग के साथ नहीं किया जा सकता है।एमवीसी 3
एमवीसी 3
उत्तर
Html.BeginForm
सहायक विधि में couple overloads है जिसका उद्देश्य उद्देश्य रूखित रूपों को आसान बनाना है। यह एमवीसी स्टैक्चर के बारे में पता है और यह सुनिश्चित करता है कि यह एक नियंत्रक और कार्रवाई को लक्षित करता है।
<form method="post" action="@Url.Action(...)">
माइक्रोसॉफ्ट के शब्दों में::
ASP.NET MVC ढांचे सहायक तरीकों कि एक दृश्य में HTML रेंडर करने के लिए एक आसान तरीका प्रदान भी शामिल है इस पर वाक्यात्मक चीनी का सिर्फ एक सा है।
बेशक, कोई भी आपको उनका उपयोग नहीं कर रहा है। यह सिर्फ वरीयता का मामला है। असल में, एमवीसी के शुरुआती दिनों में, कई वेबफॉर्म डेवलपर्स ने सर्वर नियंत्रण से अपनी नई आजादी मनाई, ए-ला <asp:TextBox>
एट अल।, और हाथ से सबकुछ लिखने पर जोर दिया।
अपने फॉर्म फ़ील्ड के लिए मददगारों का उपयोग करने की अत्यधिक अनुशंसा की जाती है, क्योंकि वे फॉर्म सत्यापन जैसी चीजों से अवगत हैं।
@using(Html.BeginForm())
{
@Html.LabelFor(...)
@Html.EditorFor(...)
}
Html.BeginForm
रिटर्न एक IDisposable
वस्तु, आप सी # using
बयान में लपेट के लिए अनुमति: Html.BeginForm
केवल आपके शुरू करने और अपनी फार्म खत्म करने के लिए एक सुसंगत रास्ता देती है। जब using
निकलता है, तो निपटान आपके लिए स्वचालित रूप से Html.EndForm()
पर कॉल करेगा। Html.EndForm
रिटर्न void
चूंकि यह उस्तरा से कॉल करने के लिए थोड़ा असुविधाजनक है:
@Html.BeginForm()
<formStuff>
@{Html.EndForm();}
एक साधारण @Html.EndForm()
, यानी Write(Html.EndForm()) -> Write(void)
करने के लिए बारी टाइम त्रुटि संकलित कर देगा।
आप हाथ से कोड कर सकते हैं, लेकिन यह इस तरह के रूप कई फायदे है:
- यह एक वस्तु है कि डिस्पोजेबल है देता है, ताकि आप इसे एक
using
खंड में डाल सकते हैं और कहीं भी होगी के लिए प्रपत्र टैग बंद आप - यह प्रपत्र कार्रवाई के लिए यूआरएल की गणना करता है
कुछ जो एक सरल फार्म के साथ नहीं किया जा सकता करता
अंत में प्रत्येक सहायक विधि कॉल को शुद्ध HTML में परिवर्तित कर दिया जाता है, इसलिए ऐसा कुछ भी नहीं है जो Html.BeginForm ऐसा कर सकता है जो <form>
टैग का उपयोग करके सीधे नहीं किया जा सकता है।
Html.BeginForm
पूरी तरह से एक सहायक विधि है।
सहायक मदद करने का क्या उद्देश्य है? (उदारवादी प्रश्न) आप मैन्युअल रूप से सभी इनपुट टाइप कर सकते हैं, लेकिन सहायक ... अच्छी तरह से, कभी-कभी आपकी सहायता करते हैं।
यह सब टैग करता है।हाँ, आप इसे मैन्युअल रूप से कर सकते हैं, या आप थोड़ा और कल्पना हो सकता है और ऐसा करते हैं:
@using(Html.BeginForm())
{
}
यह रूप में अच्छी तरह से आप के लिए प्रपत्र टैग बंद हो जाएगा। तो अगर आप सुडौल कोष्ठक के अंदर अपने सभी आदानों रखने के लिए, आप प्रपत्र टैग को बंद करने को याद बारे में चिंता करने की जरूरत नहीं है।
सवाल यह है कि * कब * इससे मदद मिलेगी। टैग को बंद करने के लिए भूलना घुंघराले ब्रैकेट को बंद करना भूल जाता है - तो बिंदु क्या है? – John
बहुत बढ़िया सवाल है, मुझे लगता है कि अपने आप को काफ़ी के बारे में सोचा।
मैं गलत हो सकता है, लेकिन यहाँ मेरा अनुमान है (एक बेहतर आदमी मुझे सही कर सकते हैं):
MVC के प्रारंभिक दिनों में, वहाँ कोई उस्तरा था।
के बीच स्विच सी #/वीबी और html कठिन वाक्य रचना के लिहाज से था, इसलिए उन सीमाओं को कम करने की दिशा में एक धक्का था।
फॉर्म बनाते समय, यह पूरी तरह से सी #/वीबी पक्ष पर पूरी तरह से फॉर्म बनाने के लिए फायदेमंद दिखाई देता था, बिना किसी इंटरमलिंग मैनुअल एचटीएमएल के, एचटीएमएल की आसपास की दुनिया में केवल एक सीमा है।
और चूंकि प्रोग्रामर अक्सर कहीं और से काम करने की शैली की नकल, उन सहायकों का प्रचलन भले ही अपने लाभ के रेजर के आगमन के साथ गायब हो गया है कायम किया है।
- 1. एमवीसी 3
- 2. एमवीसी 3
- 3. एमवीसी 3
- 4. एमवीसी 3
- 5. एमवीसी 3
- 6. एमवीसी 3
- 7. एमवीसी 3
- 8. एमवीसी 3
- 9. एमवीसी 3
- 10. एमवीसी 3
- 11. एमवीसी 3
- 12. एमवीसी 3
- 13. एमवीसी 3
- 14. एमवीसी 3
- 15. एमवीसी 3 -
- 16. एमवीसी 3
- 17. एमवीसी 3
- 18. एमवीसी 3
- 19. एमवीसी 3
- 20. एमवीसी 3
- 21. एमवीसी 3
- 22. एमवीसी 3
- 23. एमवीसी 3
- 24. एमवीसी 3
- 25. एमवीसी 3
- 26. एमवीसी 3+
- 27. एमवीसी 2 और एमवीसी 3
- 28. एमवीसी 3 से एमवीसी 4
- 29. एमवीसी 2/एमवीसी 3/एमवीसी 4
- 30. मुख्य एमवीसी 3 वेब ऐप बच्चे एमवीसी 3 वेब ऐप
इस यहाँ क्या मतलब का उपयोग करता है, यह asp.net कि आप IDisposable वस्तुओं रैप करने के लिए उपयोग करने में निर्माण का उपयोग कर से संबंधित है? – Charu
मैंने उत्तर में एक पैराग्राफ जोड़ा। – Kivin