इस सहायक की 6 overloads हैं:
@Html.EditorForModel()
रेंडर जहां TypeName
आपके विचार मॉडल का सही प्रकार का नाम है ~/Views/Shared/EditorTemplates/TypeName.cshtml
टेम्पलेट। यदि आपका व्यू मॉडल एक संग्रह है (यानी IEnumerable<TypeName>
, IList<TypeName>
, TypeName[]
, ...) एएसपी.नेट एमवीसी स्वचालित रूप से संग्रह के प्रत्येक तत्व के लिए संबंधित संपादक टेम्पलेट प्रस्तुत करेगा। ऐसा होने के लिए आपको अपने विचारों में किसी भी लूप को लिखने की आवश्यकता नहीं है। यह आपके लिए ढांचे द्वारा संभाला जाता है।
@Html.EditorForModel("templatename")
~/Views/Shared/EditorTemplates/templatename.cshtml
बजाय सम्मेलन
@Html.EditorForModel(new { Foo = "bar" })
रेंडर डिफ़ॉल्ट संपादक टेम्पलेट पर भरोसा करने की प्रस्तुत होती है इसे करने के लिए एक अतिरिक्त दृश्य डेटा गुजरता है कि आप ViewData["foo"]
या ViewBag.Foo
के साथ अंदर इस्तेमाल कर सकते हैं
@Html.EditorForModel("templatename", new { Foo = "bar" })
~/Views/Shared/EditorTemplates/templatename.cshtml
बजाय सम्मेलन पर निर्भर रहने के रेंडर और इसे करने के लिए एक अतिरिक्त दृश्य डेटा गुजरता है कि आप ViewData["foo"]
या ViewBag.Foo
@Html.EditorForModel("templatename", "fieldprefix")
के साथ अंदर इस्तेमाल कर सकते हैं ~/Views/Shared/EditorTemplates/templatename.cshtml
बजाय सम्मेलन पर निर्भर रहने के रेंडर और संशोधित करता है इस टेम्पलेट के अंदर नेविगेशन संदर्भ, जिसका अर्थ है कि उदाहरण के लिए यदि आपके पास @Html.TextBoxFor(x => x.FooBar)
इस टेम्पलेट के अंदर कॉल है तो आपको name="FooBar"
के बजाय
name="fieldprefix.FooBar"
मिलेगा
@Html.EditorForModel("templatename", "fieldprefix", new { Foo = "bar" })
रेंडर ~/Views/Shared/EditorTemplates/templatename.cshtml
बजाय सम्मेलन पर भरोसा करने की और इस टेम्पलेट के अंदर नौवहन संदर्भ को संशोधित करता है, जिसका अर्थ है कि उदाहरण के लिए यदि आप इस टेम्पलेट के अंदर एक @Html.TextBoxFor(x => x.FooBar)
कॉल किया था आप name="fieldprefix.FooBar"
बजाय name="FooBar"
मिलेगा।यह भी यह करने के लिए एक अतिरिक्त दृश्य डेटा गुजरता है कि आप के साथ ViewData["foo"]
या ViewBag.Foo
टिप्पणी के अंदर इस्तेमाल कर सकते हैं: templating प्रणाली पहले ~/Views/XXX/EditorTemplates
में टेम्पलेट्स जहां XXX नियंत्रक है, यह दृश्य सेवा की है और का नाम है के लिए दिखेगा अगर ऐसा नहीं लगता है तो यह ~/Views/Shared/EditorTemplates
में दिखेगा। यह टेम्पलेट्स के अधिक सुगंधित tweaking के लिए अनुमति दे सकता है। आपके पास साझा फ़ोल्डर में डिफ़ॉल्ट टेम्पलेट्स हो सकते हैं जिन्हें प्रति नियंत्रक आधार पर ओवरराइड किया जा सकता है।
स्रोत
2013-02-26 15:35:18