public static BsGridHtmlBuilder <TModel, TRow> BsGridFor <TModel, TRow>(this HtmlHelper <TModel> htmlHelper, Expression <Func <TModel, BsGridModel <TRow> > > expression, BsGridHtmlBuilder <TModel, TRow> baseBuilder) where TRow : BsItemModel, new() { var grid = expression.Compile().Invoke(htmlHelper.ViewData.Model); var metadata = ModelMetadata.FromLambdaExpression(expression, htmlHelper.ViewData); var fullName = ExpressionHelper.GetExpressionText(expression); var attributes = expression.GetPropertyInfo().GetCustomAttributes(true); if (baseBuilder == null) { baseBuilder = new BsGridHtmlBuilder <TModel, TRow>(fullName, grid, metadata, htmlHelper.ViewContext); } else { baseBuilder.Model = grid; baseBuilder.FullName = fullName; baseBuilder.Metadata = metadata; baseBuilder.viewContext = htmlHelper.ViewContext; } baseBuilder.SetPropsFromAttributes(attributes); return(baseBuilder); }
public BsGridBaseRenderer(BsGridHtmlBuilder <TModel, TRow> builder) : base(builder) { }