private void Init() { _xSerializer = new XunitSerializer <TImpl>(); _additionalCriteriaMap = new Dictionary <string, IFilterCriteriaBuilder>(); _pageCriteria = new DefaultCriteria <int>(CurrentInstance.GetPropertyName(x => x.Page), false); _xSerializer.RegisterField(x => x.Page); _pageSizeCriteria = new DefaultCriteria <int>(CurrentInstance.GetPropertyName(x => x.PageSize), false); _xSerializer.RegisterField(x => x.PageSize); SetDefaultPage(1); SetDefaultPageSize(10); For(x => x.SortBy) .UseTransformer(x => x.ToUrlFriendlyValue()) .UseDefaultValue(DefaultSortBy); For(x => x.OrderBy) .UseTransformer(x => x.ToUrlFriendlyValue()) .UseDefaultValue(Order.Asc); For(x => x.FreeText) .UseDefaultValue(null); For(x => x.OwnerId) .UseDefaultValue(null); OnConfiguring(); }
public FilteringOverview( BaseFilterCriteria <int> page, BaseFilterCriteria <int> pageSize, IEnumerable <IFilterCriteria> additionalCriterias) { this.Page = page; this.PageSize = pageSize; this.AdditionalCriterias = additionalCriterias; }
public EnumerableFilterCriteriaBuilder( TCollectionFilter currentInstance, Expression <Func <TCollectionFilter, IEnumerable <TProperty> > > propertySelector) { _currentInstance = currentInstance; _filterPropertySelector = propertySelector; _customPropertyName = ReflectionUtils.GetPropertyName(propertySelector); _criteria = new DefaultCriteria <TProperty>(_customPropertyName, true); }
public EnumerableFilterCriteriaBuilder <TCollectionFilter, TProperty> UseCriteria(BaseFilterCriteria <TProperty> criteria) { _criteria = criteria; return(this); }
public EnumerableFilterCriteriaBuilder <TCollectionFilter, TProperty> UseCriteria <TCriteria>() where TCriteria : BaseFilterCriteria <TProperty> { _criteria = Activator.CreateInstance <TCriteria>(); return(this); }