Class MongoDbRepository<TMongoDbContext, TEntity>
Inheritance
MongoDbRepository<TMongoDbContext, TEntity>
Assembly: Volo.Abp.MongoDB.dll
Syntax
public class MongoDbRepository<TMongoDbContext, TEntity> : RepositoryBase<TEntity>, IServiceProviderAccessor, IUnitOfWorkEnabled, IUnitOfWorkManagerAccessor, IMongoDbRepository<TEntity>, IRepository<TEntity>, IReadOnlyRepository<TEntity>, IBasicRepository<TEntity>, IReadOnlyBasicRepository<TEntity>, IRepository where TMongoDbContext : IAbpMongoDbContext where TEntity : class, IEntity
Type Parameters
Name |
Description |
TMongoDbContext |
|
TEntity |
|
Constructors
MongoDbRepository(IMongoDbContextProvider<TMongoDbContext>)
Declaration
public MongoDbRepository(IMongoDbContextProvider<TMongoDbContext> dbContextProvider)
Parameters
Properties
AuditPropertySetter
Declaration
public IAuditPropertySetter AuditPropertySetter { get; }
Property Value
BulkOperationProvider
Declaration
public IMongoDbBulkOperationProvider? BulkOperationProvider { get; }
Property Value
Collection
Declaration
[Obsolete("Use GetCollectionAsync method.")]
public virtual IMongoCollection<TEntity> Collection { get; }
Property Value
Type |
Description |
IMongoCollection<TEntity> |
|
Database
Declaration
[Obsolete("Use GetDatabaseAsync method.")]
public virtual IMongoDatabase Database { get; }
Property Value
Type |
Description |
IMongoDatabase |
|
DbContext
Declaration
[Obsolete("Use GetDbContextAsync method.")]
protected virtual TMongoDbContext DbContext { get; }
Property Value
Type |
Description |
TMongoDbContext |
|
DbContextProvider
Declaration
protected IMongoDbContextProvider<TMongoDbContext> DbContextProvider { get; }
Property Value
DistributedEventBus
Declaration
public IDistributedEventBus DistributedEventBus { get; }
Property Value
EntityChangeEventHelper
Declaration
public IEntityChangeEventHelper EntityChangeEventHelper { get; }
Property Value
GuidGenerator
Declaration
public IGuidGenerator GuidGenerator { get; }
Property Value
LocalEventBus
Declaration
public ILocalEventBus LocalEventBus { get; }
Property Value
RepositoryFilterer
Declaration
public IMongoDbRepositoryFilterer<TEntity> RepositoryFilterer { get; }
Property Value
SessionHandle
Declaration
[Obsolete("Use GetSessionHandleAsync method.")]
protected virtual IClientSessionHandle? SessionHandle { get; }
Property Value
Type |
Description |
IClientSessionHandle |
|
Methods
ApplyAbpConceptsForAddedEntityAsync(TEntity)
Declaration
protected virtual Task ApplyAbpConceptsForAddedEntityAsync(TEntity entity)
Parameters
Type |
Name |
Description |
TEntity |
entity |
|
Returns
ApplyAbpConceptsForDeletedEntity(TEntity)
Declaration
protected virtual void ApplyAbpConceptsForDeletedEntity(TEntity entity)
Parameters
Type |
Name |
Description |
TEntity |
entity |
|
ApplyDataFilters<TQueryable, TOtherEntity>(TQueryable)
Declaration
protected override TQueryable ApplyDataFilters<TQueryable, TOtherEntity>(TQueryable query) where TQueryable : IQueryable<TOtherEntity>
Parameters
Type |
Name |
Description |
TQueryable |
query |
|
Returns
Type |
Description |
TQueryable |
|
Type Parameters
Name |
Description |
TQueryable |
|
TOtherEntity |
|
Overrides
CheckAndSetId(TEntity)
Declaration
protected virtual void CheckAndSetId(TEntity entity)
Parameters
Type |
Name |
Description |
TEntity |
entity |
|
CreateEntitiesFilterAsync(IEnumerable<TEntity>, bool)
Declaration
protected virtual Task<FilterDefinition<TEntity>> CreateEntitiesFilterAsync(IEnumerable<TEntity> entities, bool withConcurrencyStamp = false)
Parameters
Type |
Name |
Description |
IEnumerable<TEntity> |
entities |
|
bool |
withConcurrencyStamp |
|
Returns
Type |
Description |
Task<FilterDefinition<TEntity>> |
|
CreateEntityFilterAsync(TEntity, bool, string?)
Declaration
protected virtual Task<FilterDefinition<TEntity>> CreateEntityFilterAsync(TEntity entity, bool withConcurrencyStamp = false, string? concurrencyStamp = null)
Parameters
Type |
Name |
Description |
TEntity |
entity |
|
bool |
withConcurrencyStamp |
|
string |
concurrencyStamp |
|
Returns
Type |
Description |
Task<FilterDefinition<TEntity>> |
|
DeleteAsync(Expression<Func<TEntity, bool>>, bool, CancellationToken)
Declaration
public override Task DeleteAsync(Expression<Func<TEntity, bool>> predicate, bool autoSave = false, CancellationToken cancellationToken = default)
Parameters
Returns
Overrides
DeleteAsync(TEntity, bool, CancellationToken)
Declaration
public override Task DeleteAsync(TEntity entity, bool autoSave = false, CancellationToken cancellationToken = default)
Parameters
Returns
Overrides
DeleteDirectAsync(Expression<Func<TEntity, bool>>, CancellationToken)
Declaration
public override Task DeleteDirectAsync(Expression<Func<TEntity, bool>> predicate, CancellationToken cancellationToken = default)
Parameters
Returns
Overrides
DeleteManyAsync(IEnumerable<TEntity>, bool, CancellationToken)
Declaration
public override Task DeleteManyAsync(IEnumerable<TEntity> entities, bool autoSave = false, CancellationToken cancellationToken = default)
Parameters
Returns
Overrides
FindAsync(Expression<Func<TEntity, bool>>, bool, CancellationToken)
Declaration
public override Task<TEntity?> FindAsync(Expression<Func<TEntity, bool>> predicate, bool includeDetails = true, CancellationToken cancellationToken = default)
Parameters
Returns
Type |
Description |
Task<TEntity> |
|
Overrides
GetAggregateAsync(CancellationToken, AggregateOptions?)
Declaration
public virtual Task<IAggregateFluent<TEntity>> GetAggregateAsync(CancellationToken cancellationToken = default, AggregateOptions? aggregateOptions = null)
Parameters
Type |
Name |
Description |
CancellationToken |
cancellationToken |
|
AggregateOptions |
aggregateOptions |
|
Returns
Type |
Description |
Task<IAggregateFluent<TEntity>> |
|
GetCollectionAsync(CancellationToken)
Declaration
public virtual Task<IMongoCollection<TEntity>> GetCollectionAsync(CancellationToken cancellationToken = default)
Parameters
Returns
Type |
Description |
Task<IMongoCollection<TEntity>> |
|
GetCountAsync(CancellationToken)
Declaration
public override Task<long> GetCountAsync(CancellationToken cancellationToken = default)
Parameters
Returns
Overrides
GetDatabaseAsync(CancellationToken)
Declaration
public virtual Task<IMongoDatabase> GetDatabaseAsync(CancellationToken cancellationToken = default)
Parameters
Returns
Type |
Description |
Task<IMongoDatabase> |
|
GetDbContextAsync(CancellationToken)
Declaration
protected Task<TMongoDbContext> GetDbContextAsync(CancellationToken cancellationToken = default)
Parameters
Returns
Type |
Description |
Task<TMongoDbContext> |
|
GetListAsync(bool, CancellationToken)
Declaration
public override Task<List<TEntity>> GetListAsync(bool includeDetails = false, CancellationToken cancellationToken = default)
Parameters
Returns
Overrides
GetListAsync(Expression<Func<TEntity, bool>>, bool, CancellationToken)
Declaration
public override Task<List<TEntity>> GetListAsync(Expression<Func<TEntity, bool>> predicate, bool includeDetails = false, CancellationToken cancellationToken = default)
Parameters
Returns
Overrides
GetMongoQueryable()
Declaration
[Obsolete("Use GetMongoQueryableAsync method.")]
public virtual IMongoQueryable<TEntity> GetMongoQueryable()
Returns
Type |
Description |
IMongoQueryable<TEntity> |
|
GetMongoQueryableAsync(CancellationToken, AggregateOptions?)
Declaration
public virtual Task<IMongoQueryable<TEntity>> GetMongoQueryableAsync(CancellationToken cancellationToken = default, AggregateOptions? aggregateOptions = null)
Parameters
Type |
Name |
Description |
CancellationToken |
cancellationToken |
|
AggregateOptions |
aggregateOptions |
|
Returns
Type |
Description |
Task<IMongoQueryable<TEntity>> |
|
GetMongoQueryableAsync<TOtherEntity>(CancellationToken, AggregateOptions?)
Declaration
protected virtual Task<IMongoQueryable<TOtherEntity>> GetMongoQueryableAsync<TOtherEntity>(CancellationToken cancellationToken = default, AggregateOptions? aggregateOptions = null)
Parameters
Type |
Name |
Description |
CancellationToken |
cancellationToken |
|
AggregateOptions |
aggregateOptions |
|
Returns
Type |
Description |
Task<IMongoQueryable<TOtherEntity>> |
|
Type Parameters
Name |
Description |
TOtherEntity |
|
GetPagedListAsync(int, int, string, bool, CancellationToken)
Declaration
public override Task<List<TEntity>> GetPagedListAsync(int skipCount, int maxResultCount, string sorting, bool includeDetails = false, CancellationToken cancellationToken = default)
Parameters
Returns
Overrides
GetQueryable()
Declaration
[Obsolete("Use GetQueryableAsync method.")]
protected override IQueryable<TEntity> GetQueryable()
Returns
Overrides
GetQueryableAsync()
Declaration
public override Task<IQueryable<TEntity>> GetQueryableAsync()
Returns
Overrides
GetSessionHandleAsync(CancellationToken)
Declaration
protected Task<IClientSessionHandle?> GetSessionHandleAsync(CancellationToken cancellationToken = default)
Parameters
Returns
Type |
Description |
Task<IClientSessionHandle> |
|
IncrementEntityVersionProperty(TEntity)
Declaration
protected virtual void IncrementEntityVersionProperty(TEntity entity)
Parameters
Type |
Name |
Description |
TEntity |
entity |
|
InsertAsync(TEntity, bool, CancellationToken)
Declaration
public override Task<TEntity> InsertAsync(TEntity entity, bool autoSave = false, CancellationToken cancellationToken = default)
Parameters
Returns
Type |
Description |
Task<TEntity> |
|
Overrides
InsertManyAsync(IEnumerable<TEntity>, bool, CancellationToken)
Declaration
public override Task InsertManyAsync(IEnumerable<TEntity> entities, bool autoSave = false, CancellationToken cancellationToken = default)
Parameters
Returns
Overrides
IsHardDeleted(TEntity)
Declaration
protected virtual bool IsHardDeleted(TEntity entity)
Parameters
Type |
Name |
Description |
TEntity |
entity |
|
Returns
SetCreationAuditProperties(TEntity)
Declaration
protected virtual void SetCreationAuditProperties(TEntity entity)
Parameters
Type |
Name |
Description |
TEntity |
entity |
|
SetDeletionAuditProperties(TEntity)
Declaration
protected virtual void SetDeletionAuditProperties(TEntity entity)
Parameters
Type |
Name |
Description |
TEntity |
entity |
|
SetModificationAuditProperties(TEntity)
Declaration
protected virtual void SetModificationAuditProperties(TEntity entity)
Parameters
Type |
Name |
Description |
TEntity |
entity |
|
SetNewConcurrencyStamp(TEntity)
Declaration
protected virtual string? SetNewConcurrencyStamp(TEntity entity)
Parameters
Type |
Name |
Description |
TEntity |
entity |
|
Returns
ThrowOptimisticConcurrencyException()
Declaration
protected virtual void ThrowOptimisticConcurrencyException()
TriggerDomainEvents(object)
Declaration
protected virtual void TriggerDomainEvents(object entity)
Parameters
Type |
Name |
Description |
object |
entity |
|
TriggerEntityCreateEvents(TEntity)
Declaration
protected virtual void TriggerEntityCreateEvents(TEntity entity)
Parameters
Type |
Name |
Description |
TEntity |
entity |
|
TriggerEntityDeleteEvents(TEntity)
Declaration
protected virtual void TriggerEntityDeleteEvents(TEntity entity)
Parameters
Type |
Name |
Description |
TEntity |
entity |
|
TriggerEntityUpdateEvents(TEntity)
Declaration
protected virtual void TriggerEntityUpdateEvents(TEntity entity)
Parameters
Type |
Name |
Description |
TEntity |
entity |
|
TrySetGuidId(IEntity<Guid>)
Declaration
protected virtual void TrySetGuidId(IEntity<Guid> entity)
Parameters
UpdateAsync(TEntity, bool, CancellationToken)
Declaration
public override Task<TEntity> UpdateAsync(TEntity entity, bool autoSave = false, CancellationToken cancellationToken = default)
Parameters
Returns
Type |
Description |
Task<TEntity> |
|
Overrides
UpdateManyAsync(IEnumerable<TEntity>, bool, CancellationToken)
Declaration
public override Task UpdateManyAsync(IEnumerable<TEntity> entities, bool autoSave = false, CancellationToken cancellationToken = default)
Parameters
Returns
Overrides
Implements
Extension Methods