यह है के साथ एक सहायक फाइल के अंदर प्राप्त करने के लिए संभव @functions
वाक्य रचना लेकिन अगर आप चाहते हैं उस्तरा शैली पठनीयता क्या आप बात कर रहे हैं भी एचटीएमएल फिट और खत्म करने के लिए एक नियमित रूप से सहायक कॉल करने के लिए की आवश्यकता होगी।
ध्यान दें कि हेल्पर फ़ाइल में फ़ंक्शंस स्थिर हैं, इसलिए आपको अभी भी पृष्ठ से HtmlHelper उदाहरण में पास करने की आवश्यकता होगी यदि आप इसके तरीकों का उपयोग करने का इरादा कर रहे थे।
उदाहरण के लिए \ MyView.cshtml
@MyHelper.DoSomething(Html, m=>m.Property1)
@MyHelper.DoSomething(Html, m=>m.Property2)
@MyHelper.DoSomething(Html, m=>m.Property3)
App_Code \ MyHelper.cshtml:
@using System.Web.Mvc;
@using System.Web.Mvc.Html;
@using System.Linq.Expressions;
@functions
{
public static HelperResult DoSomething<TModel, TItem>(HtmlHelper<TModel> html, Expression<Func<TModel, TItem>> expr)
{
return TheThingToDo(html.LabelFor(expr), html.EditorFor(expr), html.ValidationMessageFor(expr));
}
}
@helper TheThingToDo(MvcHtmlString label, MvcHtmlString textbox, MvcHtmlString validationMessage)
{
<p>
@label
<br />
@textbox
@validationMessage
</p>
}
...