public static IElementGenerator <T> GetGenerator <T, TResult>(IHtmlHelper <T> helper, Expression <Func <T, TResult> > expression) where T : class { var modelExplorer = FromLambdaExpression(expression, helper.ViewData, helper.MetadataProvider); var elementName = new ElementName(NamingConvention.GetName(typeof(T), expression.ToAccessor())); return(GetGenerator(helper, modelExplorer, helper.ViewContext, elementName)); }
private static HtmlTag BuildCheckBox(ElementRequest request) { var namingConvention = new DotNotationElementNamingConvention(); var name = namingConvention.GetName(request.HolderType(), request.Accessor); var checkboxTag = new CheckboxTag(request.Value <bool>()) .Attr("value", "true") .Attr("name", name) .Attr("id", name); var mvcConventionHiddenInput = new HiddenTag() .Attr("value", "false") .Attr("name", name); checkboxTag.After(mvcConventionHiddenInput); return(checkboxTag); }