Class AzureRepository<TQueryStrategy, TQueryBuilder, TData>
Provides basic repository methods for operations with an IDataStore<TData> using Azure DocumentDB (CosmosDB).
Inheritance
System.Object
Repository<TQueryStrategy, TQueryBuilder, TData>
AzureRepository<TQueryStrategy, TQueryBuilder, TData>
Inherited Members
Namespace: Cqrs.Azure.DocumentDb.Repositories
Assembly: Cqrs.Azure.DocumentDb.dll
Syntax
public abstract class AzureRepository<TQueryStrategy, TQueryBuilder, TData> : Repository<TQueryStrategy, TQueryBuilder, TData>, IRepository<TQueryStrategy, TData> where TQueryStrategy : IQueryStrategy where TQueryBuilder : QueryBuilder<TQueryStrategy, TData> where TData : AzureDocumentDbEntity
Type Parameters
Name | Description |
---|---|
TQueryStrategy | The |
TQueryBuilder | The |
TData | The |
Constructors
AzureRepository(Func<IDataStore<TData>>, TQueryBuilder)
Instantiates a new instance of AzureRepository<TQueryStrategy, TQueryBuilder, TData>
Declaration
protected AzureRepository(Func<IDataStore<TData>> createDataStoreFunction, TQueryBuilder queryBuilder)
Parameters
Type | Name | Description |
---|---|---|
Func<IDataStore<TData>> | createDataStoreFunction | |
TQueryBuilder | queryBuilder |
Methods
CreateQueryable(Expression<Func<TData, Boolean>>)
Calls CreateDataStoreFunction passing the predicate
.
Declaration
protected override IQueryable<TData> CreateQueryable(Expression<Func<TData, bool>> predicate)
Parameters
Type | Name | Description |
---|---|---|
Expression<Func<TData, System.Boolean>> | predicate | A function defining a filter if required. |
Returns
Type | Description |
---|---|
IQueryable<TData> |
Load(Guid, Boolean)
Load the TData
from Azure DocumentDB (CosmosDB) identified by the provided rsn
.
Declaration
public override TData Load(Guid rsn, bool throwExceptionOnMissingEntity = true)
Parameters
Type | Name | Description |
---|---|---|
Guid | rsn | The identifier if the |
System.Boolean | throwExceptionOnMissingEntity | If true will throw an |
Returns
Type | Description |
---|---|
TData |