2011-08-10 14 views
5

मैं HTMLFieldPrefix की अनुक्रमणिका कैसे बदल सकता हूं?मैं TemplateInfo.HtmlFieldPrefix की सूची अनुक्रमणिका कैसे बदल सकता हूं?

मैं EditorFor से Children[0] हो रही है() और मैं इसे Children[@Model.Id]
EditorFor() से या Children[2].Children[4] बनाना चाहते है और मैं इसे Children[@"ParentModel".Id].Children[@Model.Id]

मैं क्रम में जब तक वास्तविक उपसर्ग पता नहीं होगा बनाना चाहते हैं। अधिमानतः इसे बदलने के लिए एक अंतर्निहित तरीका होगा?
या सिर्फ स्ट्रिंग के साथ गड़बड़ कर रहे हैं? मैं अभी भी सी # स्ट्रिंग कार्यों के लिए नया हूँ।

उत्तर

8

प्रयास डाल अपने संपादक टेम्पलेट के अंदर निम्नलिखित:

@model SomeViewModel 
@{   
    ViewData.TemplateInfo.HtmlFieldPrefix = Regex.Replace(
     ViewData.TemplateInfo.HtmlFieldPrefix, 
     @"\[[0-9]+\]$", 
     m => string.Format("[{0}]", Model.Id) 
    ); 
} 
+0

कि बहुत अच्छा है! मैंने सोचा कि यह एक नियमित अभिव्यक्ति की तरह था। मुझे कैसे दिखाने के लिए धन्यवाद। – Benjamin

+0

सुंदर समाधान। मैं एमवीसी से नापसंद करता हूं क्योंकि इसमें सबकुछ नहीं है, लेकिन इसमें लगभग किसी भी चीज को करने में लचीलापन है। – bijayk

संबंधित मुद्दे