Table of Contents

Interface IDiskRepositoryCollection<TEntity, TKey>

Namespace
Tharga.MongoDB
Assembly
Tharga.MongoDB.dll
public interface IDiskRepositoryCollection<TEntity, TKey> : IRepositoryCollection<TEntity, TKey>, IReadOnlyRepositoryCollection<TEntity, TKey>, IRepositoryCollection, IReadOnlyRepositoryCollection where TEntity : EntityBase<TKey>

Type Parameters

TEntity
TKey
Inherited Members

Methods

AddOrReplaceAsync(TEntity, IClientSessionHandle)

Task<EntityChangeResult<TEntity>> AddOrReplaceAsync(TEntity entity, IClientSessionHandle session = null)

Parameters

entity TEntity
session IClientSessionHandle

Returns

Task<EntityChangeResult<TEntity>>

DeleteManyAsync(FilterDefinition<TEntity>, IClientSessionHandle)

Task<long> DeleteManyAsync(FilterDefinition<TEntity> filter, IClientSessionHandle session = null)

Parameters

filter FilterDefinition<TEntity>
session IClientSessionHandle

Returns

Task<long>

DeleteManyAsync(Expression<Func<TEntity, bool>>, IClientSessionHandle)

Task<long> DeleteManyAsync(Expression<Func<TEntity, bool>> predicate = null, IClientSessionHandle session = null)

Parameters

predicate Expression<Func<TEntity, bool>>
session IClientSessionHandle

Returns

Task<long>

DeleteOneAsync(FilterDefinition<TEntity>, OneOption<TEntity>, IClientSessionHandle)

Task<TEntity> DeleteOneAsync(FilterDefinition<TEntity> filter, OneOption<TEntity> options = null, IClientSessionHandle session = null)

Parameters

filter FilterDefinition<TEntity>
options OneOption<TEntity>
session IClientSessionHandle

Returns

Task<TEntity>

DeleteOneAsync(Expression<Func<TEntity, bool>>, OneOption<TEntity>, IClientSessionHandle)

Task<TEntity> DeleteOneAsync(Expression<Func<TEntity, bool>> predicate, OneOption<TEntity> options = null, IClientSessionHandle session = null)

Parameters

predicate Expression<Func<TEntity, bool>>
options OneOption<TEntity>
session IClientSessionHandle

Returns

Task<TEntity>

GetCollection()

[Obsolete("Use ExecuteAsync instead. This method will be deprecated.")]
IMongoCollection<TEntity> GetCollection()

Returns

IMongoCollection<TEntity>

ReplaceOneAsync(TEntity, OneOption<TEntity>, IClientSessionHandle)

Task<EntityChangeResult<TEntity>> ReplaceOneAsync(TEntity entity, OneOption<TEntity> options = null, IClientSessionHandle session = null)

Parameters

entity TEntity
options OneOption<TEntity>
session IClientSessionHandle

Returns

Task<EntityChangeResult<TEntity>>

UpdateManyAsync(FilterDefinition<TEntity>, UpdateDefinition<TEntity>, IClientSessionHandle)

Task<long> UpdateManyAsync(FilterDefinition<TEntity> filter, UpdateDefinition<TEntity> update, IClientSessionHandle session = null)

Parameters

filter FilterDefinition<TEntity>
update UpdateDefinition<TEntity>
session IClientSessionHandle

Returns

Task<long>

UpdateManyAsync(Expression<Func<TEntity, bool>>, UpdateDefinition<TEntity>, IClientSessionHandle)

Task<long> UpdateManyAsync(Expression<Func<TEntity, bool>> predicate, UpdateDefinition<TEntity> update, IClientSessionHandle session = null)

Parameters

predicate Expression<Func<TEntity, bool>>
update UpdateDefinition<TEntity>
session IClientSessionHandle

Returns

Task<long>

UpdateOneAsync(FilterDefinition<TEntity>, UpdateDefinition<TEntity>, OneOption<TEntity>, IClientSessionHandle)

Task<EntityChangeResult<TEntity>> UpdateOneAsync(FilterDefinition<TEntity> filter, UpdateDefinition<TEntity> update, OneOption<TEntity> options = null, IClientSessionHandle session = null)

Parameters

filter FilterDefinition<TEntity>
update UpdateDefinition<TEntity>
options OneOption<TEntity>
session IClientSessionHandle

Returns

Task<EntityChangeResult<TEntity>>

UpdateOneAsync(Expression<Func<TEntity, bool>>, UpdateDefinition<TEntity>, OneOption<TEntity>, IClientSessionHandle)

Task<EntityChangeResult<TEntity>> UpdateOneAsync(Expression<Func<TEntity, bool>> predicate, UpdateDefinition<TEntity> update, OneOption<TEntity> options = null, IClientSessionHandle session = null)

Parameters

predicate Expression<Func<TEntity, bool>>
update UpdateDefinition<TEntity>
options OneOption<TEntity>
session IClientSessionHandle

Returns

Task<EntityChangeResult<TEntity>>

UpdateOneAsync(TKey, UpdateDefinition<TEntity>, IClientSessionHandle)

Task<EntityChangeResult<TEntity>> UpdateOneAsync(TKey id, UpdateDefinition<TEntity> update, IClientSessionHandle session = null)

Parameters

id TKey
update UpdateDefinition<TEntity>
session IClientSessionHandle

Returns

Task<EntityChangeResult<TEntity>>