Assembly: Epic.Query.Object
C# |
public interface IDeferred<TResult>
- TResult
- Type of the result required.
A deferred can be seen as a value which has not been computed yet. Its Expression declaratively describes the qualities of the TResult. Such expression is defined by the Defer<(Of <<'(TDeferred, TResult>)>>)(Expression<(Of <<'(TResult>)>>)) method of the Deferrer.
Different extension methods can be defined to produce different kind of deferreds. For example, some common search operations are defined in the Searchable static class. Such extentions will create new deferreds extending IDeferred<(Of <(<'TResult>)>)> (like ISearch<(Of <(<'TEntity, TIdentity>)>)>, IOrderedSearch<(Of <(<'TEntity, TIdentity>)>)> and ISlicedSearch<(Of <(<'TEntity, TIdentity>)>)>) using specialized Expression<(Of <(<'TValue>)>)> for their specific purposes.
The IDeferred<(Of <(<'TResult>)>)> can be evaluated when the TResult is actually needed, through the Evaluate<(Of <<'(TResult>)>>)(IDeferred<(Of <<'(TResult>)>>)) method.
All Members | Properties | ||||
Member | Description | |
---|---|---|
Deferrer |
Deferrer that created and can evaluated Expression.
| |
Expression |
Deferred expression.
|