public static TreeListColumnBuilder <TRow> AddFor <TRow, TProperty>(this CollectionFactory <TreeListColumnBuilder <TRow> > factory, Expression <Func <TRow, TProperty> > expression)
 {
     return(factory.Add(delegate(IHtmlHelperAdapter html, TreeListColumnBuilder <TRow> item)
     {
         string expressionText = GetExpressionText(html, expression);
         item.DataField(expressionText);
         ModelExplorer modelExplorer = GetModelExplorer(html, expression);
         ModelMetadata modelMetadata = modelExplorer?.Metadata;
         if (modelMetadata != null)
         {
             string displayName = GetDisplayName(modelMetadata);
             if (!string.IsNullOrEmpty(displayName))
             {
                 item.Caption(displayName);
             }
             GridColumnDataType?gridColumnDataType = GetGridColumnDataType(modelMetadata);
             if (gridColumnDataType.HasValue)
             {
                 item.DataType(gridColumnDataType.Value);
             }
             IEnumerable <IDictionary <string, object> > validationRules = DataAnnotationsHelper.GetValidationRules(expressionText, modelExplorer, html.ViewContext);
             if (validationRules.Any())
             {
                 item.Options["validationRules"] = validationRules;
             }
         }
     }));
 }
 public static DataGridSummaryGroupItemBuilder <TRow> AddFor <TRow, TProperty>(this CollectionFactory <DataGridSummaryGroupItemBuilder <TRow> > factory, Expression <Func <TRow, TProperty> > expression)
 {
     return(factory.Add(delegate(IHtmlHelperAdapter html, DataGridSummaryGroupItemBuilder <TRow> item)
     {
         item.Column(GetExpressionText(html, expression));
     }));
 }
 public static DataGridSummaryGroupItemBuilder <TRow> AddFor <TRow, TColumn, TDisplayColumn>(this CollectionFactory <DataGridSummaryGroupItemBuilder <TRow> > factory, Expression <Func <TRow, TColumn> > column, Expression <Func <TRow, TDisplayColumn> > displayColumn)
 {
     return(factory.Add(delegate(IHtmlHelperAdapter html, DataGridSummaryGroupItemBuilder <TRow> item)
     {
         item.Column(GetExpressionText(html, column));
         item.ShowInColumn(GetExpressionText(html, displayColumn));
     }));
 }
 public static PivotGridDataSourceFieldBuilder <TField> AddFor <TField, TProperty>(this CollectionFactory <PivotGridDataSourceFieldBuilder <TField> > factory, Expression <Func <TField, TProperty> > expression)
 {
     return(factory.Add(delegate(IHtmlHelperAdapter html, PivotGridDataSourceFieldBuilder <TField> item)
     {
         item.DataField(GetExpressionText(html, expression));
         ModelMetadata modelMetadata = GetModelExplorer(html, expression)?.Metadata;
         if (modelMetadata != null)
         {
             string displayName = GetDisplayName(modelMetadata);
             if (!string.IsNullOrEmpty(displayName))
             {
                 item.Caption(displayName);
             }
             PivotGridDataType?pivotGridFieldDataType = GetPivotGridFieldDataType(modelMetadata);
             if (pivotGridFieldDataType.HasValue)
             {
                 item.DataType(pivotGridFieldDataType.Value);
             }
         }
     }));
 }