MVC视图中扩展helper(泛型绑定Model)

    @functions{
        public HelperResult EditBoxFor<TModel, TKey>(HtmlHelper<TModel> html, Expression<Func<TModel, TKey>> expression, bool disabled = false)
        {
            return EditBox(
                html.LabelFor(expression, htmlAttributes: new { @class = "col-md-3 control-label" }),
                disabled ? html.EditorFor(expression, new { htmlAttributes = new { @class = "form-control", disabled = "" } })
                    : html.EditorFor(expression, new { htmlAttributes = new { @class = "form-control" } }),
                html.ValidationMessageFor(expression, "", new { @class = "text-danger" })
                );
        }
    }
    @helper EditBox(MvcHtmlString label, MvcHtmlString editor, MvcHtmlString validation)
    {
        <div class="form-group">
            @label
            <div class="col-md-9">
                @editor
                @validation
            </div>
        </div>
     }

调用: 

@EditBoxFor(Html, model => model.Agent, true)

原文地址:https://www.cnblogs.com/nirvanan/p/11951868.html