ऊपर पदों के लिए धन्यवाद, वे मुझे मदद की एक मजबूत बनाने के लिए निम्नानुसार एमवीसी 4 HTMLHelpers के लिए बाध्यकारी प्रणाली टाइप करें।
public static MvcHtmlString StrongTypeBinder(this HtmlHelper htmlhelper, Expression<Func<object, string>> SomeLambda)
{
var body = SomeLambda.Body;
var propertyName = ((PropertyInfo)((MemberExpression)body).Member).Name;
HtmlString = @"
<input type='text' name='@Id' id='@Id'/>
";
HtmlString = HtmlString.Replace("@Id", propertyName);
var finalstring = new MvcHtmlString(HtmlString);
return finalstring;
}
किसी भी CSHTML दृश्य में इसके बाद के संस्करण कोड का उपयोग करें:
@Html.StrongTypeBinder(p=>Model.SelectedDate)
यह मैं किसी भी HTML तत्व प्रकार मैं चाहता हूँ करने के लिए एक ViewModel में किसी भी संपत्ति बाध्य करने के लिए अनुमति देता है। ऊपर दिए गए उदाहरण में, उपयोगकर्ता द्वारा चयन किए जाने के बाद पोस्ट किए गए चयनित डेटा के लिए नाम फ़ील्ड बाध्यकारी है। पोस्ट बैक के बाद व्यूमोडेल स्वचालित रूप से चयनित मान दिखाता है।
स्रोत
2014-12-01 20:13:50
सुधार::
यहाँ एक उदाहरण उपयोग यह System.Reflection.MethodBase.GetCurrentMethod किया जाना चाहिए() नाम – aads