/// <summary> /// Add required criteria /// </summary> /// <param name="criteria">The criteria</param> public IRequireResult Require(IFilterCriteria criteria) { if (_results.Any(c => c.Type.Equals(FilterCriteriaType.And))) { throw new InvalidOperationException( "Required criteria were already registered. Use methods And(...) or Or(..) at required criteria chain for register new one."); } return(new RequireResult(this, criteria)); }
/// <summary> /// Add excluded criteria /// </summary> /// <param name="criteria">The criteria</param> public IExcludeResult Exclude(IFilterCriteria criteria) { if (_results.Any(c => c.Type.Equals(FilterCriteriaType.Not))) { throw new InvalidOperationException( "Excluded criteria were already registered. Use method And(...) at excluded criteria chain for register new one."); } return(new ExcludeResult(this, criteria)); }
public FilteringOverview GetOverview() { _pageCriteria.SetValues(Page); _pageSizeCriteria.SetValues(PageSize); var additionalCriterias = new List <IFilterCriteria>(); foreach (var kvp in _additionalCriteriaMap) { IFilterCriteriaBuilder criteriaBuilder = kvp.Value; object filtersPropertyValue = ReflectionUtils.GetPropertyValue(CurrentInstance, kvp.Key); IFilterCriteria criteria = criteriaBuilder.Build(filtersPropertyValue); additionalCriterias.Add(criteria); } return(new FilteringOverview(_pageCriteria, _pageSizeCriteria, additionalCriterias)); }
public override ICommand CreateGetListCommand <T>(IFilterCriteria criteria) { Type typeT = typeof(T); string uniqueId = "232FDED0-6C97-40B4-930F-FC190124D181"; if (!CommandCache.ContainsKey(string.Format(CACHE_KEY, uniqueId, typeT.FullName))) { Anito.Data.Schema.TypeTable schemaTable = Provider.GetSchema(typeT); Command sqlCommand = new Command(); sqlCommand.SqlCommand.CommandText = string.Format( "{0} {1} {2} {3}", SELECT, SelectColumnsStatement(typeT), FROM, schemaTable.ViewSource ); CommandCache.Add(string.Format(CACHE_KEY, uniqueId, typeT.FullName), sqlCommand); } return(CommandCache[string.Format(CACHE_KEY, uniqueId, typeT.FullName)]); }
public void SwitchToFilter(IFilterCriteria criteria) { this.CurrentFilter = criteria; }
public ActionFilterChanged(IFilterCriteria criteria) { Criteria = criteria; }
public ClientPerspective() { CurrentFilter = new AllActionsFilter(); }
/// <summary> /// Initializes a new instance of the <see cref="EfGenericRepository{TEntity}"/> class. /// </summary> /// <param name="context">The context.</param> /// <param name="filterCriteria">The filter criteria.</param> public EfGenericRepository(IDbContext context, IFilterCriteria <TEntity> filterCriteria) { this._filterCriteria = filterCriteria; this._context = context; this._dbSet = context.Set <TEntity>(); }
public FilterDisplay(IFilterCriteria criteria) { Criteria = criteria; }
public RequireResult(FilterCriteriaBuilder builder, IFilterCriteria criteria) { _builder = builder; And(criteria); }
/// <summary> /// Add criteria for excluding that will be used if previous chain of criteria which should be excluded are false /// </summary> /// <param name="criteria">The criteria</param> /// <returns></returns> public IExcludeResult Or(IFilterCriteria criteria) { _builder._results.Add(new FilterCriteriaResult(criteria, FilterCriteriaType.Not, GetLevel() + 1)); return(this); }
public ExcludeResult(FilterCriteriaBuilder builder, IFilterCriteria criteria) { _builder = builder; And(criteria); }
/// <summary> /// Add required criteria that will be used if previous required criteria are false /// </summary> /// <param name="criteria">The criteria</param> public IRequireResult Or(IFilterCriteria criteria) { _builder._results.Add(new FilterCriteriaResult(criteria, FilterCriteriaType.And, GetLevel() + 1)); return(this); }
public FilterCriteriaResult(IFilterCriteria criteria, FilterCriteriaType type, int level) { Criteria = criteria; Type = type; Level = level; }
public IEnumerable <Product> Filter(IEnumerable <Product> products, IFilterCriteria <Product> criteria) { return(products.Where(criteria.IsSatisfied)); }
public abstract ICommand CreateGetListCommand <T>(IFilterCriteria criteria);