Пример #1
0
        protected virtual bool ModifyPropertyInfo(Type typeForDynamicProperties, DynamicModelPropertyInfo info)
        {
            SetDetaultValues(info);
            MapPropertiesToModel(typeForDynamicProperties, info);
            if (NonNullableObjects.Contains(info.Name))
            {
                info.AddAttribute(new NullValueAttribute(false));
            }
            if (typeof(BaseView).IsAssignableFrom(typeForDynamicProperties))
            {
                if (GridViewMappings.ContainsKey(info.Name))
                {
                    info.AddAttribute(new BrowsableAttribute(false));
                }
//                    info.CreateValueCalculator("((IModelListView)this.Parent.Parent)." + _gridViewMappings[info.Name]);
            }
            else if (typeof(GridColumn).IsAssignableFrom(typeForDynamicProperties))
            {
                if (ColumnMappings.ContainsKey(info.Name))
                {
                    var expressionPath = "((IModelColumn)this.Parent)." + ColumnMappings[info.Name];
                    info.CreateValueCalculator(expressionPath);
                }
                else if (ColumnPropertiesToExclude.Contains(info.Name))
                {
                    return(false);
                }
            }
            return(true);
        }
        protected virtual void MapPropertiesToModel(Type typeForDynamicProperties, DynamicModelPropertyInfo info) {
            var parentProperties = _modelColumnProperties;
            if (typeof(BaseView).IsAssignableFrom(typeForDynamicProperties))
                parentProperties = _modelListViewProperties;

            if (parentProperties.Contains(info.Name)) {
                info.CreateValueCalculator();
            }
        }
 protected virtual bool ModifyPropertyInfo(Type typeForDynamicProperties, DynamicModelPropertyInfo info) {
     SetDetaultValues(info);
     MapPropertiesToModel(typeForDynamicProperties, info);
     if (_nonNullableObjects.Contains(info.Name)) {
         info.AddAttribute(new NullValueAttribute(false));
     }
     if (typeof(BaseView).IsAssignableFrom(typeForDynamicProperties)) {
         if (_gridViewMappings.ContainsKey(info.Name))
             info.CreateValueCalculator("((IModelListView)this.Parent.Parent)." + _gridViewMappings[info.Name]);
     } else if (typeof(GridColumn).IsAssignableFrom(typeForDynamicProperties)) {
         if (_columnMappings.ContainsKey(info.Name)) {
             var expressionPath = "((IModelColumn)this.Parent)." + _columnMappings[info.Name];
             info.CreateValueCalculator(expressionPath);
         } else if (_columnPropertiesToExclude.Contains(info.Name))
             return false;
     }
     return true;
 }
Пример #4
0
        protected virtual void MapPropertiesToModel(Type typeForDynamicProperties, DynamicModelPropertyInfo info)
        {
            var parentProperties = ModelColumnProperties;

            if (typeof(BaseView).IsAssignableFrom(typeForDynamicProperties))
            {
                parentProperties = ModelListViewProperties;
            }

            if (parentProperties.Contains(info.Name))
            {
                info.CreateValueCalculator();
            }
        }