2012-04-21 6 views
5

का उपयोग क्यों करें मैं एमवीसी 3 रेज़र उदाहरण देख रहा हूं और html.editor को उपयोग करने के लिए देख रहा हूं और इस मंच पर बहुत कुछ के बारे में भी पूछा। मैं html.textboxfor और passwordfor का उपयोग क्यों नहीं कर सकता? धन्यवादएमवीसी 3 html.editorfor

उत्तर

9

संपादक के लिए इसका लाभ है कि यह डेटा प्रकार से जुड़े एक संपादक को प्रस्तुत करने का प्रयास करेगा।

उदाहरण के लिए: आप अपने खुद के डिजाइन तो Editor Templates वे स्वचालित रूप से संपत्ति का प्रकार या UIHint

एक उपयोगी संपादक टेम्पलेट एक जब संपत्ति के प्रकार का एक DateTime है कि एक दिनांक पिकर उत्पन्न हो सकता है पर आधारित रेंडर किया जाएगा।

रूप में अच्छी तरह जब यह एक <textarea> renders जब MultilineText

TextBoxFor और PasswordFor का उपयोग के साथ संपत्ति टैगिंग जहां 'स्मार्ट' EditorFor संपत्ति इस तरह के एक उदाहरण है के लिए 'सर्वश्रेष्ठ' संपादक उत्पन्न होगा कुछ अन्य स्थितियों रहे हैं उन मामलों के लिए बिल्कुल ठीक हैं जहां आपको 'एक विशेष संपादक' की आवश्यकता नहीं है। HtmlAttributes सेट करते समय यह आपके जीवन को भी सरल बना सकता है। इस बारे में स्पष्ट संदेह के लिए

+0

मैं दोनों उत्तरों के लिए धन्यवाद देना चाहता हूं। ये पूरी चीज को मंजूरी दे दी। मैंने इस लिंक को उन 2 लिंक के कारण स्वीकार कर लिया है जिनकी मुझे इशारा किया गया है, महान जानकारी। –

6

रेफरी Differences between Html.TextboxFor and Html.EditorFor in MVC and Razor ..

HtmlTextboxFor हमेशा एक textbox (<input type="text" ...).

बनाता EditorFor प्रकार और मेटा जानकारी को देखता है, और एक और नियंत्रण या एक टेम्पलेट प्रदान कर सकते हैं जबकि आप आपूर्ति करते हैं

उदाहरण के लिए डेटटाइम गुणों के लिए आप एक टेम्पलेट बना सकते हैं जो jQuery DatePicker का उपयोग करता है।

यदि आप कैसे अपने बक्सें उन्हें एक div में लपेटकर तरह बनाए जाते हैं के पहलू के लिए कुछ बदलने का फैसला तो आप बस इस बदलाव को जबकि से लाभ होगा एक कस्टम संपादक टेम्पलेट (~/Views/Shared/EditorTemplates/string.cshtml) और अपने आवेदन में अपने सभी बक्सें लिख सकता है यदि आपने Html.TextBoxFor हार्डकोड किया है तो आपको इसे हर जगह संशोधित करना होगा।