Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
 public BsGridBaseRenderer(BsGridHtmlBuilder <TModel, TRow> builder)
     : base(builder)
 {
 }