Class WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits>
Primary concrete CriterionSpec, modelling criteria as an IValue, an expression tree and a display component.
public class WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits> : CriterionSpec where TComponent : IComponent, INullableWidget<TProperty?> where TTraits : Traits, new()
Type Parameters
TEntityThe type of the entity for which criteria are being specified.
TPropertyThe type of the property modelled by the display component.
TComponentAn INullableWidget<T> which can be set to a value by the user.
TTraitsIValue<T> specialisation traits (optional).
- Inheritance
-
WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits>
- Inherited Members
Constructors
WidgetCriterionSpec(string, Func<TProperty, Expression<Func<TEntity, bool>>>, Func<TProperty, Expression<Func<TEntity, bool>>>, TProperty?, IEntityInfo?)
public WidgetCriterionSpec(string label, Func<TProperty, Expression<Func<TEntity, bool>>> createPredicate, Func<TProperty, Expression<Func<TEntity, bool>>> createInversePredicate, TProperty? defaultValue = default, IEntityInfo? readAccessRequired = null)
Parameters
labelstringcreatePredicateFunc<TProperty, Expression<Func<TEntity, bool>>>createInversePredicateFunc<TProperty, Expression<Func<TEntity, bool>>>defaultValueTPropertyreadAccessRequiredIEntityInfo
WidgetCriterionSpec(string, Func<TProperty, Expression<Func<TEntity, bool>>>, TProperty?, IEntityInfo?)
public WidgetCriterionSpec(string label, Func<TProperty, Expression<Func<TEntity, bool>>> createPredicate, TProperty? defaultValue = default, IEntityInfo? readAccessRequired = null)
Parameters
labelstringcreatePredicateFunc<TProperty, Expression<Func<TEntity, bool>>>defaultValueTPropertyreadAccessRequiredIEntityInfo
WidgetCriterionSpec(string, Func<TProperty, ICriteriaTree<TEntity>>, TProperty?, IEntityInfo?)
public WidgetCriterionSpec(string label, Func<TProperty, ICriteriaTree<TEntity>> createTree, TProperty? defaultValue, IEntityInfo? readAccessRequired = null)
Parameters
labelstringcreateTreeFunc<TProperty, ICriteriaTree<TEntity>>defaultValueTPropertyreadAccessRequiredIEntityInfo
Properties
CanCreateSynchronously
public override bool CanCreateSynchronously { get; }
Property Value
ReadAccessRequired
public override IEntityInfo? ReadAccessRequired { get; }
Property Value
Methods
Component<TNewComponent>()
public virtual WidgetCriterionSpec<TEntity, TProperty, TNewComponent, TTraits> Component<TNewComponent>() where TNewComponent : IComponent, INullableWidget<TProperty?>
Returns
- WidgetCriterionSpec<TEntity, TProperty, TNewComponent, TTraits>
Type Parameters
TNewComponent
CreateLens()
protected Box<TProperty?> CreateLens()
Returns
- Box<TProperty>
CreateLensAsync(CriterionContext)
protected virtual Task<Box<TProperty?>> CreateLensAsync(CriterionContext context)
Parameters
contextCriterionContext
Returns
CreateModel(CriterionContext)
public override CriterionModel CreateModel(CriterionContext context)
Parameters
contextCriterionContext
Returns
CreateModelAsync(CriterionContext)
public override Task<CriterionModel> CreateModelAsync(CriterionContext context)
Parameters
contextCriterionContext
Returns
Default(Func<IServices, Task<TProperty>>)
public WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits> Default(Func<IServices, Task<TProperty>> getValue)
Parameters
Returns
- WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits>
Default(Func<IServices, TProperty>)
public WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits> Default(Func<IServices, TProperty> getValue)
Parameters
Returns
- WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits>
Default(TProperty)
public WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits> Default(TProperty value)
Parameters
valueTProperty
Returns
- WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits>
Hidden()
public WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits> Hidden()
Returns
- WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits>
HiddenIf(Func<IServices, bool>)
public WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits> HiddenIf(Func<IServices, bool> predicate)
Parameters
Returns
- WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits>
Rename(Func<IServices, string>)
public WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits> Rename(Func<IServices, string> getLabel)
Parameters
Returns
- WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits>
Rename(string)
public WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits> Rename(string label)
Parameters
labelstring
Returns
- WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits>
Visible()
public WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits> Visible()
Returns
- WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits>
VisibleIf(Func<IServices, bool>)
public WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits> VisibleIf(Func<IServices, bool> predicate)
Parameters
Returns
- WidgetCriterionSpec<TEntity, TProperty, TComponent, TTraits>