Class CriteriaController<T, TSpec>
public class CriteriaController<T, TSpec> : CriteriaController<T>, IScreenController<CriteriaModel<T>>, IScreenController where T : IEntity<T> where TSpec : EntitySpecificationBase<T>
Type Parameters
TTSpec
- Inheritance
-
CriteriaController<T, TSpec>
- Implements
- Inherited Members
Constructors
CriteriaController(IServices, Func<IEntityContext, IEntityQuery<T>>, Func<ISurface, bool, ICriteriaFactory<T, TSpec>>, Action<CriteriaOptions>)
public CriteriaController(IServices services, Func<IEntityContext, IEntityQuery<T>> queryFactory, Func<ISurface, bool, ICriteriaFactory<T, TSpec>> factoryFactory, Action<CriteriaOptions> configure)
Parameters
servicesIServicesqueryFactoryFunc<IEntityContext, IEntityQuery<T>>factoryFactoryFunc<ISurface, bool, ICriteriaFactory<T, TSpec>>configureAction<CriteriaOptions>
Properties
HasActiveTabs
true if any criteria are active
public override bool HasActiveTabs { get; }
Property Value
Tabs
public override IReadOnlyList<TabController<T>> Tabs { get; }
Property Value
Methods
CheckActive()
update the active state of all criteria
public override void CheckActive()
CreateUninitialisedModel(ISurface)
protected override CriteriaModel<T> CreateUninitialisedModel(ISurface s)
Parameters
sISurface
Returns
GetActiveQuery(IEntityContext)
returns a query which will apply all global and active criteria
public override IEntityQuery<T> GetActiveQuery(IEntityContext context)
Parameters
contextIEntityContext
Returns
- IEntityQuery<T>
GetCriteria()
returns a tree containing all global and active criteria
public override ICriteriaTree<T> GetCriteria()
Returns
GetGlobalQuery(IEntityContext)
returns a query applying only global criteria
public override IEntityQuery<T> GetGlobalQuery(IEntityContext context)
Parameters
contextIEntityContext
Returns
- IEntityQuery<T>
InitialiseModel(CriteriaModel<T>)
protected override void InitialiseModel(CriteriaModel<T> vm)
Parameters
vmCriteriaModel<T>
ResetCriteria()
clear and deactivate all criteria
public override void ResetCriteria()
UpdateCountsAsync(ResultState)
update the counts of active criteria
public override Task UpdateCountsAsync(ResultState requirements)
Parameters
requirementsResultState