समस्या यह है: जब मैं एक पृष्ठ पर उसी प्रकार के 2 नियंत्रण डालता हूं तो मुझे बाध्यकारी के लिए अलग-अलग उपसर्ग निर्दिष्ट करने की आवश्यकता होती है। इस मामले में फॉर्म गलत होने के ठीक बाद उत्पन्न प्रमाणीकरण नियम। तो मामला ?: के लिए ग्राहक सत्यापन काम पाने के लिएएएसपी.नेट एमवीसी 2 क्लाइंटसाइड सत्यापन समस्या उपसर्गों के साथ नियंत्रण के साथ
पेज शामिल हैं:
<%
Html.RenderPartial(ViewLocations.Shared.PhoneEditPartial, new PhoneViewModel { Phone = person.PhonePhone, Prefix = "PhonePhone" });
Html.RenderPartial(ViewLocations.Shared.PhoneEditPartial, new PhoneViewModel { Phone = person.FaxPhone, Prefix = "FaxPhone" });
%>
नियंत्रण ViewUserControl <PhoneViewModel>:
<%= Html.TextBox(Model.GetPrefixed("CountryCode"), Model.Phone.CountryCode) %>
<%= Html.ValidationMessage("Phone.CountryCode", new { id = Model.GetPrefixed("CountryCode"), name = Model.GetPrefixed("CountryCode") })%>
जहां Model.GetPrefixed("CountryCode")
बस "FaxPhone.CountryCode" रिटर्न या "फोनफोन.कंट्रीकोड" उपसर्ग
के आधार पर
और यहां फ़ॉर्म के बाद उत्पन्न सत्यापन नियम हैं। उन्हें फ़ील्ड नाम "फोन.कंट्रीकोड" के लिए डुप्लिकेट किया गया है। जबकि वांछित परिणाम 2 नियम (अपेक्षित, संख्या) FieldNames "FaxPhone.CountryCode" से प्रत्येक के लिए, "PhonePhone.CountryCode" alt text http://www.freeimagehosting.net/uploads/37fbe720bf.png
है सवाल कुछ हद तक Asp.Net MVC2 Clientside Validation and duplicate ID's problem की नकल है, लेकिन सलाह मैन्युअल आईडी नहीं करता है उत्पन्न करने के लिए मदद नहीं करता है।
अच्छा। यह जवाब बहुत उपयोगी था। इच्छा है कि मैं इसे दो बार ऊपर उठा सकता हूं। –
बहुत, बहुत उपयोगी। धन्यवाद। – Luke
मुझे पता है कि यह एक पुराना उत्तर है, लेकिन मैं सोच रहा था कि क्या आपकी विधि इसे आपके दृश्य में डालने के लिए बेहतर है: ViewData.TemplateInfo.HtmlFieldPrefix = "myViewModel.MyCustomObjdect"; –