<?xml version="1.0"?>
<doc>
    <assembly>
        <name>MongoDbGenericRepository</name>
    </assembly>
    <members>
        <member name="T:MongoDbGenericRepository.IBaseMongoRepository">
            <summary>
            The IBaseMongoRepository interface exposes the CRUD functionality of the BaseMongoRepository.
            </summary>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository.GetPaginatedAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Int32,System.Int32,System.String)">
            <summary>
            Asynchronously returns a paginated list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter"></param>
            <param name="skipNumber">The number of documents you want to skip. Default value is 0.</param>
            <param name="takeNumber">The number of documents you want to take. Default value is 50.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository.GetPaginatedAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Int32,System.Int32,System.String)">
            <summary>
            Asynchronously returns a paginated list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter"></param>
            <param name="skipNumber">The number of documents you want to skip. Default value is 0.</param>
            <param name="takeNumber">The number of documents you want to take. Default value is 50.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository.GetAndUpdateOne``1(MongoDB.Driver.FilterDefinition{``0},MongoDB.Driver.UpdateDefinition{``0},MongoDB.Driver.FindOneAndUpdateOptions{``0,``0})">
            <summary>
            GetAndUpdateOne with filter
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter"></param>
            <param name="update"></param>
            <param name="options"></param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository.GetAndUpdateOne``2(MongoDB.Driver.FilterDefinition{``0},MongoDB.Driver.UpdateDefinition{``0},MongoDB.Driver.FindOneAndUpdateOptions{``0,``0})">
            <summary>
            GetAndUpdateOne with filter
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter"></param>
            <param name="update"></param>
            <param name="options"></param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update.UpdateOneAsync``2(``0)">
            <summary>
            Asynchronously Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="modifiedDocument">The document with the modifications you want to persist.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update.UpdateOne``2(``0)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="modifiedDocument">The document with the modifications you want to persist.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update.UpdateOneAsync``2(``0,MongoDB.Driver.UpdateDefinition{``0})">
            <summary>
            Takes a document you want to modify and applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="update">The update definition for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update.UpdateOne``2(``0,MongoDB.Driver.UpdateDefinition{``0})">
            <summary>
            Takes a document you want to modify and applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="update">The update definition for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update.UpdateOne``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            For the entity selected by the filter, updates the property field with the given value..
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update.UpdateOneAsync``3(``0,System.Linq.Expressions.Expression{System.Func{``0,``2}},``2)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update.UpdateOneAsync``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            For the entity selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update.UpdateOne``3(``0,System.Linq.Expressions.Expression{System.Func{``0,``2}},``2)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update.UpdateOneAsync``3(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update.UpdateOne``3(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update.UpdateManyAsync``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update.UpdateManyAsync``3(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update.UpdateManyAsync``2(MongoDB.Driver.FilterDefinition{``0},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update.UpdateManyAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update.UpdateMany``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update.UpdateMany``3(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update.UpdateMany``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update.UpdateMany``2(MongoDB.Driver.FilterDefinition{``0},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.IBaseMongoRepository_Update_ClientSession.UpdateOne``3(MongoDB.Driver.IClientSessionHandle,System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="session">The client session.</param>
            <param name="modifiedDocument">The document with the modifications you want to persist.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.IBaseMongoRepository_Update_ClientSession.UpdateOne``3(MongoDB.Driver.IClientSessionHandle,MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="session">The client session.</param>
            <param name="modifiedDocument">The document with the modifications you want to persist.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.IBaseMongoRepository_Update_ClientSession.UpdateOne``3(MongoDB.Driver.IClientSessionHandle,``0,System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="session">The client session.</param>
            <param name="documentToModify">The document to modify.</param>
            <param name="update">The update definition.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.IBaseMongoRepository_Update_ClientSession.UpdateOne``2(MongoDB.Driver.IClientSessionHandle,``0,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="session">The client session.</param>
            <param name="documentToModify">The document to modify.</param>
            <param name="update">The update definition.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.IBaseMongoRepository_Update_ClientSession.UpdateOne``2(MongoDB.Driver.IClientSessionHandle,``0,MongoDB.Driver.UpdateDefinition{``0},System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field to update.</typeparam>
            <param name="session">The client session.</param> 
            <param name="documentToModify">The document to modify.</param>
            <param name="field">The field to update.</param>
            <param name="value">The value of the field.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.IBaseMongoRepository_Update_ClientSession.UpdateOneAsync``3(MongoDB.Driver.IClientSessionHandle,System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field to update.</typeparam>
            <param name="session">The client session.</param>
            <param name="documentToModify">The document to modify.</param>
            <param name="field">The field to update.</param>
            <param name="value">The value of the field.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.IBaseMongoRepository_Update_ClientSession.UpdateOneAsync``3(MongoDB.Driver.IClientSessionHandle,MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field to update.</typeparam>
            <param name="session">The client session.</param>
            <param name="filter">The filter for the update.</param>
            <param name="field">The field to update.</param>
            <param name="value">The value of the field.</param>
            <param name="partitionKey">The optional partition key.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.IBaseMongoRepository_Update_ClientSession.UpdateOneAsync``3(MongoDB.Driver.IClientSessionHandle,``0,System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field to update.</typeparam>
            <param name="session">The client session.</param>
            <param name="filter">The filter for the update.</param>
            <param name="field">The field to update.</param>
            <param name="value">The value of the field.</param>
            <param name="partitionKey">The optional partition key.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.IBaseMongoRepository_Update_ClientSession.UpdateOneAsync``2(MongoDB.Driver.IClientSessionHandle,``0,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field to update.</typeparam>
            <param name="session">The client session.</param>
            <param name="filter">The filter for the update.</param>
            <param name="field">The field to update.</param>
            <param name="value">The value of the field.</param>
            <param name="partitionKey">The optional partition key.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.IBaseMongoRepository_Update_ClientSession.UpdateOneAsync``2(MongoDB.Driver.IClientSessionHandle,``0,MongoDB.Driver.UpdateDefinition{``0},System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field to update.</typeparam>
            <param name="session">The client session.</param>
            <param name="filter">The filter for the update.</param>
            <param name="field">The field to update.</param>
            <param name="value">The value of the field.</param>
            <param name="partitionKey">The optional partition key.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOneAsync``2(MongoDB.Driver.IClientSessionHandle,``0,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="session">The client session.</param>
            <param name="modifiedDocument">The document with the modifications you want to persist.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOne``2(MongoDB.Driver.IClientSessionHandle,``0,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="session">The client session.</param>
            <param name="modifiedDocument">The document with the modifications you want to persist.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOneAsync``2(MongoDB.Driver.IClientSessionHandle,``0,MongoDB.Driver.UpdateDefinition{``0},System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="session">The client session.</param>
            <param name="documentToModify">The document to modify.</param>
            <param name="update">The update definition.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOne``2(MongoDB.Driver.IClientSessionHandle,``0,MongoDB.Driver.UpdateDefinition{``0},System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="session">The client session.</param>
            <param name="documentToModify">The document to modify.</param>
            <param name="update">The update definition.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOneAsync``3(MongoDB.Driver.IClientSessionHandle,``0,System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field to update.</typeparam>
            <param name="session">The client session.</param> 
            <param name="documentToModify">The document to modify.</param>
            <param name="field">The field to update.</param>
            <param name="value">The value of the field.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOne``3(MongoDB.Driver.IClientSessionHandle,``0,System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field to update.</typeparam>
            <param name="session">The client session.</param>
            <param name="documentToModify">The document to modify.</param>
            <param name="field">The field to update.</param>
            <param name="value">The value of the field.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOneAsync``3(MongoDB.Driver.IClientSessionHandle,MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field to update.</typeparam>
            <param name="session">The client session.</param>
            <param name="filter">The filter for the update.</param>
            <param name="field">The field to update.</param>
            <param name="value">The value of the field.</param>
            <param name="partitionKey">The optional partition key.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOneAsync``3(MongoDB.Driver.IClientSessionHandle,System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field to update.</typeparam>
            <param name="session">The client session.</param>
            <param name="filter">The filter for the update.</param>
            <param name="field">The field to update.</param>
            <param name="value">The value of the field.</param>
            <param name="partitionKey">The optional partition key.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOne``3(MongoDB.Driver.IClientSessionHandle,MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field to update.</typeparam>
            <param name="session">The client session.</param>
            <param name="filter">The filter for the update.</param>
            <param name="field">The field to update.</param>
            <param name="value">The value of the field.</param>
            <param name="partitionKey">The optional partition key.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOne``3(MongoDB.Driver.IClientSessionHandle,System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field to update.</typeparam>
            <param name="session">The client session.</param>
            <param name="filter">The filter for the update.</param>
            <param name="field">The field to update.</param>
            <param name="value">The value of the field.</param>
            <param name="partitionKey">The optional partition key.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOneAsync``2(``0)">
            <summary>
            Asynchronously Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="modifiedDocument">The document with the modifications you want to persist.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOne``2(``0)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="modifiedDocument">The document with the modifications you want to persist.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOneAsync``2(``0,MongoDB.Driver.UpdateDefinition{``0})">
            <summary>
            Takes a document you want to modify and applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="update">The update definition for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOne``2(``0,MongoDB.Driver.UpdateDefinition{``0})">
            <summary>
            Takes a document you want to modify and applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="update">The update definition for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOneAsync``3(``0,System.Linq.Expressions.Expression{System.Func{``0,``2}},``2)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOne``3(``0,System.Linq.Expressions.Expression{System.Func{``0,``2}},``2)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOneAsync``3(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOneAsync``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            For the entity selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOne``3(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            Updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateOne``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            For the entity selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateManyAsync``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateManyAsync``3(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateManyAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, apply the update definition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateManyAsync``2(MongoDB.Driver.FilterDefinition{``0},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, apply the update definition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateMany``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateMany``3(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Update.MongoDbUpdater.UpdateMany``2(MongoDB.Driver.FilterDefinition{``0},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, apply the update definition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="UpdateDefinition">The update definition.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Base.DataAccessBase.HandlePartitioned``2(``0)">
            <summary>
            Gets a collections for a potentially partitioned document type.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="document">The document.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Base.DataAccessBase.GetCollection``2(System.String)">
            <summary>
            Gets a collections for the type TDocument with a partition key.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="partitionKey">The collection partition key.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Base.DataAccessBase.HandlePartitioned``2(System.String)">
            <summary>
            Gets a collections for a potentially partitioned document type.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="partitionKey">The collection partition key.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Base.DataAccessBase.ConvertExpression``2(System.Linq.Expressions.Expression{System.Func{``0,``1}})">
            <summary>
            Converts a LINQ expression of TDocument, TValue to a LINQ expression of TDocument, object
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TValue">The type of the value.</typeparam>
            <param name="expression">The expression to convert</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Base.DataAccessBase.MapIndexOptions(MongoDbGenericRepository.Models.IndexCreationOptions)">
            <summary>
            Maps a IndexCreationOptions object to a MongoDB.Driver.CreateIndexOptions object
            </summary>
            <param name="indexCreationOptions">The options for creating an index.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Base.DataAccessBase.GetMinMongoQuery``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.String)">
            <summary>
            Gets the minimum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="minValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Base.DataAccessBase.GetMaxMongoQuery``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.String)">
            <summary>
            Gets the minimum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="maxValueSelector">A property selector to order by descending.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Create.MongoDbCreator.AddOneAsync``2(``0)">
            <summary>
            Asynchronously adds a document to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="document">The document you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Create.MongoDbCreator.AddOne``2(``0)">
            <summary>
            Adds a document to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="document">The document you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Create.MongoDbCreator.AddManyAsync``2(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Asynchronously adds a list of documents to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="documents">The documents you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Create.MongoDbCreator.AddMany``2(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Adds a list of documents to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="documents">The documents you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Create.MongoDbCreator.FormatDocument``2(``0)">
            <summary>
            Sets the value of the document Id if it is not set already.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="document">The document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Delete.MongoDbEraser.DeleteOne``2(``0)">
            <summary>
            Deletes a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="document">The document you want to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Delete.MongoDbEraser.DeleteOneAsync``2(``0)">
            <summary>
            Asynchronously deletes a document matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="document">The document you want to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Delete.MongoDbEraser.DeleteOne``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Deletes a document matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Delete.MongoDbEraser.DeleteOneAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously deletes a document matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Delete.MongoDbEraser.DeleteManyAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously deletes the documents matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Delete.MongoDbEraser.DeleteManyAsync``2(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Asynchronously deletes a list of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="documents">The list of documents to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Delete.MongoDbEraser.DeleteMany``2(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Deletes a list of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="documents">The list of documents to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Delete.MongoDbEraser.DeleteMany``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Deletes the documents matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Index.MongoDbIndexHandler.GetIndexesNamesAsync``2(System.String)">
            <summary>
            Returns the names of the indexes present on a collection.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="partitionKey">An optional partition key</param>
            <returns>A list containing the names of the indexes on on the concerned collection.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Index.MongoDbIndexHandler.CreateTextIndexAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Create a text index on the given field.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Index.MongoDbIndexHandler.CreateAscendingIndexAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates an index on the given field in ascending order.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Index.MongoDbIndexHandler.CreateDescendingIndexAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates an index on the given field in descending order.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Index.MongoDbIndexHandler.CreateHashedIndexAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates a hashed index on the given field.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Index.MongoDbIndexHandler.CreateCombinedTextIndexAsync``2(System.Collections.Generic.IEnumerable{System.Linq.Expressions.Expression{System.Func{``0,System.Object}}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates a combined text index.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="fields">The fields we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Index.MongoDbIndexHandler.DropIndexAsync``2(System.String,System.String)">
            <summary>
            Drops the index given a field name
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="indexName">The name of the index</param>
            <param name="partitionKey">An optional partition key</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.GetByIdAsync``2(``1,System.String)">
            <summary>
            Asynchronously returns one document given its id.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="id">The Id of the document you want to get.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.GetById``2(``1,System.String)">
            <summary>
            Returns one document given its id.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="id">The Id of the document you want to get.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.GetOneAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously returns one document given an expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.GetOne``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns one document given an expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.GetCursor``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns a collection cursor.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.AnyAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns true if any of the document of the collection matches the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.Any``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns true if any of the document of the collection matches the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.GetAllAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously returns a list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.GetAll``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns a list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.CountAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously counts how many documents match the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partitionKey</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.Count``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Counts how many documents match the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partitionKey</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.GetByMaxAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="maxValueSelector">A property selector to order by descending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.GetByMax``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="maxValueSelector">A property selector to order by descending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.GetByMinAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the minimum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="minValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.GetByMin``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the minimum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="minValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.GetMaxValueAsync``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.String)">
            <summary>
            Gets the maximum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="orderByAscending">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.GetMaxValue``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.String)">
            <summary>
            Gets the maximum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="maxValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.GetMinValueAsync``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.String)">
            <summary>
            Gets the minimum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="minValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.GetMinValue``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.String)">
            <summary>
            Gets the minimum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="minValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.SumByAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Int32}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.SumBy``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Int32}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.SumByAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Decimal}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.SumBy``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Decimal}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.GroupBy``4(System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{System.Linq.IGrouping{``1,``0},``2}},System.String)">
            <summary>
            Groups a collection of documents given a grouping criteria, 
            and returns a dictionary of listed document groups with keys having the different values of the grouping criteria.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TGroupKey">The type of the grouping criteria.</typeparam>
            <typeparam name="TProjection">The type of the projected group.</typeparam>
            <param name="groupingCriteria">The grouping criteria.</param>
            <param name="groupProjection">The projected group result.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.GroupBy``4(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{System.Linq.IGrouping{``1,``0},``2}},System.String)">
            <summary>
            Groups filtered a collection of documents given a grouping criteria, 
            and returns a dictionary of listed document groups with keys having the different values of the grouping criteria.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TGroupKey">The type of the grouping criteria.</typeparam>
            <typeparam name="TProjection">The type of the projected group.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The grouping criteria.</param>
            <param name="projection">The projected group result.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.GetSortedPaginatedAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.Boolean,System.Int32,System.Int32,System.String)">
            <summary>
            Asynchronously returns a paginated list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="sortSelector">The property selector.</param>
            <param name="ascending">Order of the sorting.</param>
            <param name="skipNumber">The number of documents you want to skip. Default value is 0.</param>
            <param name="takeNumber">The number of documents you want to take. Default value is 50.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.GetSortedPaginatedAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},MongoDB.Driver.SortDefinition{``0},System.Int32,System.Int32,System.String)">
            <summary>
            Asynchronously returns a paginated list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="sortDefinition">The sort definition.</param>
            <param name="skipNumber">The number of documents you want to skip. Default value is 0.</param>
            <param name="takeNumber">The number of documents you want to take. Default value is 50.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.ProjectOneAsync``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Asynchronously returns a projected document matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.ProjectOne``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Returns a projected document matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.ProjectManyAsync``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Asynchronously returns a list of projected documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.DataAccess.Read.MongoDbReader.ProjectMany``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Asynchronously returns a list of projected documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="T:MongoDbGenericRepository.IBaseReadOnlyRepository">
            <summary>
            The IBaseReadOnlyRepository exposes the generic Read Only functionality of the BaseMongoRepository.
            </summary>
        </member>
        <member name="P:MongoDbGenericRepository.IBaseReadOnlyRepository.ConnectionString">
            <summary>
            The connection string.
            </summary>
        </member>
        <member name="P:MongoDbGenericRepository.IBaseReadOnlyRepository.DatabaseName">
            <summary>
            The database name.
            </summary>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.GetByIdAsync``2(``1,System.String)">
            <summary>
            Asynchronously returns one document given its id.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="id">The Id of the document you want to get.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.GetById``2(``1,System.String)">
            <summary>
            Returns one document given its id.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="id">The Id of the document you want to get.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.GetOneAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously returns one document given an expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.GetOne``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns one document given an expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.GetCursor``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns a collection cursor.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.AnyAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns true if any of the document of the collection matches the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.Any``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns true if any of the document of the collection matches the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.GetAllAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously returns a list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.GetAll``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns a list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.CountAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously counts how many documents match the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partitionKey</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.Count``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Counts how many documents match the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partitionKey</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.GetByMaxAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="orderByDescending">A property selector to order by descending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.GetByMax``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="orderByDescending">A property selector to order by descending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.GetByMinAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the minimum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="orderByAscending">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.GetByMin``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the minimum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="orderByAscending">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.GetMaxValueAsync``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.String)">
            <summary>
            Gets the maximum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="orderByAscending">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.GetMaxValue``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.String)">
            <summary>
            Gets the maximum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="orderByDescending">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.GetMinValueAsync``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.String)">
            <summary>
            Gets the minimum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="minValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.GetMinValue``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.String)">
            <summary>
            Gets the minimum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="minValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.SumByAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Int32}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.SumBy``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Int32}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.SumByAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Decimal}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.SumBy``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Decimal}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.ProjectOneAsync``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Asynchronously returns a projected document matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter"></param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.ProjectOne``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Returns a projected document matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter"></param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.ProjectManyAsync``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Asynchronously returns a list of projected documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter"></param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.ProjectMany``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Asynchronously returns a list of projected documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter"></param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.GroupBy``4(System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{System.Linq.IGrouping{``1,``0},``2}},System.String)">
            <summary>
            Groups filtered a collection of documents given a grouping criteria, 
            and returns a dictionary of listed document groups with keys having the different values of the grouping criteria.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TGroupKey">The type of the grouping criteria.</typeparam>
            <typeparam name="TProjection">The type of the projected group.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="groupingCriteria">The grouping criteria.</param>
            <param name="groupProjection">The projected group result.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.GroupBy``4(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{System.Linq.IGrouping{``1,``0},``2}},System.String)">
            <summary>
            Groups filtered a collection of documents given a grouping criteria, 
            and returns a dictionary of listed document groups with keys having the different values of the grouping criteria.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TGroupKey">The type of the grouping criteria.</typeparam>
            <typeparam name="TProjection">The type of the projected group.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="groupingCriteria">The grouping criteria.</param>
            <param name="groupProjection">The projected group result.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.GetSortedPaginatedAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.Boolean,System.Int32,System.Int32,System.String)">
            <summary>
            Asynchronously returns a paginated list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="sortSelector">The property selector.</param>
            <param name="ascending">Order of the sorting.</param>
            <param name="skipNumber">The number of documents you want to skip. Default value is 0.</param>
            <param name="takeNumber">The number of documents you want to take. Default value is 50.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseReadOnlyRepository.GetSortedPaginatedAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},MongoDB.Driver.SortDefinition{``0},System.Int32,System.Int32,System.String)">
            <summary>
            Asynchronously returns a paginated list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="sortDefinition">The sort definition.</param>
            <param name="skipNumber">The number of documents you want to skip. Default value is 0.</param>
            <param name="takeNumber">The number of documents you want to take. Default value is 50.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="T:MongoDbGenericRepository.IMongoDbContext">
            <summary>
            This is the interface of the IMongoDbContext which is managed by the <see cref="T:MongoDbGenericRepository.BaseMongoRepository"/>.
            </summary>
        </member>
        <member name="P:MongoDbGenericRepository.IMongoDbContext.Client">
            <summary>
            The IMongoClient from the official MongoDb driver
            </summary>
        </member>
        <member name="P:MongoDbGenericRepository.IMongoDbContext.Database">
            <summary>
            The IMongoDatabase from the official Mongodb driver
            </summary>
        </member>
        <member name="M:MongoDbGenericRepository.IMongoDbContext.GetCollection``1(System.String)">
            <summary>
            Returns a collection for a document type that has a partition key.
            </summary>
            <typeparam name="TDocument"></typeparam>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IMongoDbContext.DropCollection``1(System.String)">
            <summary>
            Drops a collection having a partitionkey, use very carefully.
            </summary>
            <typeparam name="TDocument"></typeparam>
        </member>
        <member name="M:MongoDbGenericRepository.IMongoDbContext.SetGuidRepresentation(MongoDB.Bson.GuidRepresentation)">
            <summary>
            Sets the Guid representation of the MongoDb Driver.
            </summary>
            <param name="guidRepresentation">The new value of the GuidRepresentation</param>
        </member>
        <member name="T:MongoDbGenericRepository.IReadOnlyMongoRepository">
            <summary>
            The IReadOnlyMongoRepository exposes the readonly functionality of the BaseMongoRepository.
            </summary>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.GetByIdAsync``1(`0,System.String)">
            <summary>
            Asynchronously returns one document given its id.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="id">The Id of the document you want to get.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.GetById``1(`0,System.String)">
            <summary>
            Returns one document given its id.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="id">The Id of the document you want to get.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.GetOneAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously returns one document given an expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.GetOne``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns one document given an expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.GetCursor``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns a collection cursor.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.AnyAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously returns true if any of the document of the collection matches the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.Any``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns true if any of the document of the collection matches the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.GetAllAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously returns a list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.GetAll``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns a list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.CountAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously counts how many documents match the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.Count``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Counts how many documents match the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.GetByMaxAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="orderByDescending">A property selector to order by descending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.GetByMax``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="orderByDescending">A property selector to order by descending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.GetByMinAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="orderByAscending">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.GetByMin``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="orderByAscending">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.GetMaxValueAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Gets the maximum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="maxValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.GetMaxValue``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Gets the maximum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="maxValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.GetMinValueAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Gets the minimum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="minValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.GetMinValue``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Gets the minimum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="minValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.SumByAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Int32}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.SumByAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Decimal}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.SumBy``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Int32}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.SumBy``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Decimal}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.ProjectOneAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Asynchronously returns a projected document matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.ProjectOne``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Returns a projected document matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.ProjectManyAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Asynchronously returns a list of projected documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.ProjectMany``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Asynchronously returns a list of projected documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.GroupBy``3(System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{System.Linq.IGrouping{``1,``0},``2}},System.String)">
            <summary>
            Groups a collection of documents given a grouping criteria, 
            and returns a dictionary of listed document groups with keys having the different values of the grouping criteria.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TGroupKey">The type of the grouping criteria.</typeparam>
            <typeparam name="TProjection">The type of the projected group.</typeparam>
            <param name="groupingCriteria">The grouping criteria.</param>
            <param name="groupProjection">The projected group result.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.GroupBy``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{System.Linq.IGrouping{``1,``0},``2}},System.String)">
            <summary>
            Groups filtered a collection of documents given a grouping criteria, 
            and returns a dictionary of listed document groups with keys having the different values of the grouping criteria.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TGroupKey">The type of the grouping criteria.</typeparam>
            <typeparam name="TProjection">The type of the projected group.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="groupingCriteria">The grouping criteria.</param>
            <param name="groupProjection">The projected group result.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.GetSortedPaginatedAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.Boolean,System.Int32,System.Int32,System.String)">
            <summary>
            Asynchronously returns a paginated list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="sortSelector">The property selector.</param>
            <param name="ascending">Order of the sorting.</param>
            <param name="skipNumber">The number of documents you want to skip. Default value is 0.</param>
            <param name="takeNumber">The number of documents you want to take. Default value is 50.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IReadOnlyMongoRepository`1.GetSortedPaginatedAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},MongoDB.Driver.SortDefinition{``0},System.Int32,System.Int32,System.String)">
            <summary>
            Asynchronously returns a paginated list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="sortDefinition">The sort definition.</param>
            <param name="skipNumber">The number of documents you want to skip. Default value is 0.</param>
            <param name="takeNumber">The number of documents you want to take. Default value is 50.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="T:MongoDbGenericRepository.Attributes.CollectionNameAttribute">
            <summary>
            This attribute allows you to specify of the name of the collection.
            Added at commit c117bf2a7fee378f1e02199dea9b2023a7089ee2 by https://github.com/Etchelon
            who has included the CollectionName attribute into the repo to give another choice to the user on how 
            to name their collections. 
            The attribute takes precedence of course, and if not present the library will fall back to your Pluralize method.
            </summary>
        </member>
        <member name="P:MongoDbGenericRepository.Attributes.CollectionNameAttribute.Name">
            <summary>
            The name of the collection in which your documents are stored.
            </summary>
        </member>
        <member name="M:MongoDbGenericRepository.Attributes.CollectionNameAttribute.#ctor(System.String)">
            <summary>
            The constructor.
            </summary>
            <param name="name">The name of the collection.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Create.AddOneAsync``2(``0)">
            <summary>
            Asynchronously adds a document to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="document">The document you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Create.AddOne``2(``0)">
            <summary>
            Adds a document to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="document">The document you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Create.AddManyAsync``2(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Asynchronously adds a list of documents to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="documents">The documents you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Create.AddMany``2(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Adds a list of documents to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="documents">The documents you want to add.</param>
        </member>
        <member name="T:MongoDbGenericRepository.BaseMongoRepository">
            <summary>
            The base Repository, it is meant to be inherited from by your custom custom MongoRepository implementation.
            Its constructor must be given a connection string and a database name.
            </summary>
            <summary>
            The base Repository, it is meant to be inherited from by your custom custom MongoRepository implementation.
            Its constructor must be given a connection string and a database name.
            </summary>
            <summary>
            The base Repository, it is meant to be inherited from by your custom custom MongoRepository implementation.
            Its constructor must be given a connection string and a database name.
            </summary>
            <summary>
            The base Repository, it is meant to be inherited from by your custom custom MongoRepository implementation.
            Its constructor must be given a connection string and a database name.
            </summary>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.AddOneAsync``2(``0)">
            <summary>
            Asynchronously adds a document to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="document">The document you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.AddOneAsync``1(``0)">
            <summary>
            Asynchronously adds a document to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="document">The document you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.AddOne``2(``0)">
            <summary>
            Adds a document to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="document">The document you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.AddOne``1(``0)">
            <summary>
            Adds a document to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="document">The document you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.AddManyAsync``2(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Asynchronously adds a list of documents to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="documents">The documents you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.AddManyAsync``1(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Asynchronously adds a list of documents to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="documents">The documents you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.AddMany``2(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Adds a list of documents to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="documents">The documents you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.AddMany``1(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Adds a list of documents to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="documents">The documents you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.DeleteOneAsync``1(``0)">
            <summary>
            Asynchronously deletes a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="document">The document you want to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.DeleteOne``1(``0)">
            <summary>
            Deletes a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="document">The document you want to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.DeleteOne``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Deletes a document matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.DeleteOneAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously deletes a document matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.DeleteManyAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously deletes the documents matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.DeleteManyAsync``1(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Asynchronously deletes a list of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="documents">The list of documents to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.DeleteMany``1(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Deletes a list of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="documents">The list of documents to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.DeleteMany``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Deletes the documents matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.DeleteOne``2(``0)">
            <summary>
            Deletes a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="document">The document you want to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.DeleteOneAsync``2(``0)">
            <summary>
            Asynchronously deletes a document matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="document">The document you want to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.DeleteOne``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Deletes a document matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.DeleteOneAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously deletes a document matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.DeleteManyAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously deletes the documents matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.DeleteManyAsync``2(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Asynchronously deletes a list of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="documents">The list of documents to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.DeleteMany``2(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Deletes a list of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="documents">The list of documents to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.DeleteMany``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Deletes the documents matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.GetIndexesNamesAsync``1(System.String)">
            <summary>
            Returns the names of the indexes present on a collection.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="partitionKey">An optional partition key</param>
            <returns>A list containing the names of the indexes on on the concerned collection.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.GetIndexesNamesAsync``2(System.String)">
            <summary>
            Returns the names of the indexes present on a collection.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="partitionKey">An optional partition key</param>
            <returns>A list containing the names of the indexes on on the concerned collection.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.CreateTextIndexAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Create a text index on the given field.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.CreateTextIndexAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Create a text index on the given field.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.CreateAscendingIndexAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates an index on the given field in ascending order.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.CreateAscendingIndexAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates an index on the given field in ascending order.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.CreateDescendingIndexAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates an index on the given field in descending order.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.CreateDescendingIndexAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <inheritdoc />
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.CreateHashedIndexAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates a hashed index on the given field.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.CreateHashedIndexAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <inheritdoc />
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.CreateCombinedTextIndexAsync``1(System.Collections.Generic.IEnumerable{System.Linq.Expressions.Expression{System.Func{``0,System.Object}}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates a combined text index.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="fields">The fields we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.CreateCombinedTextIndexAsync``2(System.Collections.Generic.IEnumerable{System.Linq.Expressions.Expression{System.Func{``0,System.Object}}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <inheritdoc />
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.DropIndexAsync``1(System.String,System.String)">
            <summary>
            Drops the index given a field name
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="indexName">The name of the index</param>
            <param name="partitionKey">An optional partition key</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.DropIndexAsync``2(System.String,System.String)">
            <inheritdoc />
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.#ctor(System.String,System.String)">
            <summary>
            The constructor taking a connection string and a database name.
            </summary>
            <param name="connectionString">The connection string of the MongoDb server.</param>
            <param name="databaseName">The name of the database against which you want to perform operations.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.#ctor(MongoDbGenericRepository.IMongoDbContext)">
            <summary>
            The contructor taking a <see cref="T:MongoDbGenericRepository.IMongoDbContext"/>.
            </summary>
            <param name="mongoDbContext">A mongodb context implementing <see cref="T:MongoDbGenericRepository.IMongoDbContext"/></param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.#ctor(MongoDB.Driver.IMongoDatabase)">
            <summary>
            The contructor taking a <see cref="T:MongoDB.Driver.IMongoDatabase"/>.
            </summary>
            <param name="mongoDatabase">A mongodb context implementing <see cref="T:MongoDB.Driver.IMongoDatabase"/></param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.GetPaginatedAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Int32,System.Int32,System.String)">
            <summary>
            Asynchronously returns a paginated list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="skipNumber">The number of documents you want to skip. Default value is 0.</param>
            <param name="takeNumber">The number of documents you want to take. Default value is 50.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.GetPaginatedAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Int32,System.Int32,System.String)">
            <summary>
            Asynchronously returns a paginated list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="skipNumber">The number of documents you want to skip. Default value is 0.</param>
            <param name="takeNumber">The number of documents you want to take. Default value is 50.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.GetAndUpdateOne``1(MongoDB.Driver.FilterDefinition{``0},MongoDB.Driver.UpdateDefinition{``0},MongoDB.Driver.FindOneAndUpdateOptions{``0,``0})">
            <summary>
            GetAndUpdateOne with filter
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="update"></param>
            <param name="options"></param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.GetAndUpdateOne``2(MongoDB.Driver.FilterDefinition{``0},MongoDB.Driver.UpdateDefinition{``0},MongoDB.Driver.FindOneAndUpdateOptions{``0,``0})">
            <summary>
            GetAndUpdateOne with filter
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="update"></param>
            <param name="options"></param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.FormatDocument``2(``0)">
            <summary>
            Sets the value of the document Id if it is not set already.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="document">The document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.FormatDocument``1(``0)">
            <summary>
            Sets the value of the document Id if it is not set already.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <param name="document">The document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.HandlePartitioned``1(System.String)">
            <summary>
            Gets a collections for a potentially partitioned document type.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <param name="partitionKey">The collection partition key.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.GetCollection``1(System.String)">
            <summary>
            Gets a collections for the type TDocument with a partition key.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <param name="partitionKey">The collection partition key.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOneAsync``2(MongoDB.Driver.IClientSessionHandle,``0,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="session">The client session.</param>
            <param name="modifiedDocument">The document with the modifications you want to persist.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOne``2(MongoDB.Driver.IClientSessionHandle,``0,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="session">The client session.</param>
            <param name="modifiedDocument">The document with the modifications you want to persist.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOneAsync``2(MongoDB.Driver.IClientSessionHandle,``0,MongoDB.Driver.UpdateDefinition{``0},System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="session">The client session.</param>
            <param name="documentToModify">The document to modify.</param>
            <param name="update">The update definition.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOne``2(MongoDB.Driver.IClientSessionHandle,``0,MongoDB.Driver.UpdateDefinition{``0},System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="session">The client session.</param>
            <param name="documentToModify">The document to modify.</param>
            <param name="update">The update definition.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOneAsync``3(MongoDB.Driver.IClientSessionHandle,``0,System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field to update.</typeparam>
            <param name="session">The client session.</param> 
            <param name="documentToModify">The document to modify.</param>
            <param name="field">The field to update.</param>
            <param name="value">The value of the field.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOne``3(MongoDB.Driver.IClientSessionHandle,``0,System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field to update.</typeparam>
            <param name="session">The client session.</param>
            <param name="documentToModify">The document to modify.</param>
            <param name="field">The field to update.</param>
            <param name="value">The value of the field.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOneAsync``3(MongoDB.Driver.IClientSessionHandle,MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field to update.</typeparam>
            <param name="session">The client session.</param>
            <param name="filter">The filter for the update.</param>
            <param name="field">The field to update.</param>
            <param name="value">The value of the field.</param>
            <param name="partitionKey">The optional partition key.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOneAsync``3(MongoDB.Driver.IClientSessionHandle,System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field to update.</typeparam>
            <param name="session">The client session.</param>
            <param name="filter">The filter for the update.</param>
            <param name="field">The field to update.</param>
            <param name="value">The value of the field.</param>
            <param name="partitionKey">The optional partition key.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOne``3(MongoDB.Driver.IClientSessionHandle,MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field to update.</typeparam>
            <param name="session">The client session.</param>
            <param name="filter">The filter for the update.</param>
            <param name="field">The field to update.</param>
            <param name="value">The value of the field.</param>
            <param name="partitionKey">The optional partition key.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOne``3(MongoDB.Driver.IClientSessionHandle,System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String,System.Threading.CancellationToken)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field to update.</typeparam>
            <param name="session">The client session.</param>
            <param name="filter">The filter for the update.</param>
            <param name="field">The field to update.</param>
            <param name="value">The value of the field.</param>
            <param name="partitionKey">The optional partition key.</param>
            <param name="cancellationToken">The optional cancellation token.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOneAsync``1(``0)">
            <summary>
            Asynchronously Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="modifiedDocument">The document with the modifications you want to persist.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOne``1(``0)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="modifiedDocument">The document with the modifications you want to persist.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOneAsync``1(``0,MongoDB.Driver.UpdateDefinition{``0})">
            <summary>
            Takes a document you want to modify and applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="update">The update definition for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOne``1(``0,MongoDB.Driver.UpdateDefinition{``0})">
            <summary>
            Takes a document you want to modify and applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="update">The update definition for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOne``2(``0,System.Linq.Expressions.Expression{System.Func{``0,``1}},``1)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOneAsync``2(``0,System.Linq.Expressions.Expression{System.Func{``0,``1}},``1)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOne``2(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOne``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            For the entity selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOneAsync``2(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOneAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            For the entity selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateManyAsync``2(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateManyAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateManyAsync``1(MongoDB.Driver.FilterDefinition{``0},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateManyAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateMany``2(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateMany``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateMany``1(MongoDB.Driver.FilterDefinition{``0},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateMany``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOneAsync``2(``0)">
            <summary>
            Asynchronously Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="modifiedDocument">The document with the modifications you want to persist.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOne``2(``0)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="modifiedDocument">The document with the modifications you want to persist.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOneAsync``2(``0,MongoDB.Driver.UpdateDefinition{``0})">
            <summary>
            Takes a document you want to modify and applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="update">The update definition for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOne``2(``0,MongoDB.Driver.UpdateDefinition{``0})">
            <summary>
            Takes a document you want to modify and applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="update">The update definition for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOne``3(``0,System.Linq.Expressions.Expression{System.Func{``0,``2}},``2)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOneAsync``3(``0,System.Linq.Expressions.Expression{System.Func{``0,``2}},``2)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOne``3(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            Updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOne``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            For the entity selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOneAsync``3(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateOneAsync``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            For the entity selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateManyAsync``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateManyAsync``3(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateManyAsync``2(MongoDB.Driver.FilterDefinition{``0},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateManyAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateMany``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateMany``3(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``2}},``2,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateMany``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository.UpdateMany``2(MongoDB.Driver.FilterDefinition{``0},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Delete.DeleteOne``2(``0)">
            <summary>
            Deletes a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="document">The document you want to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Delete.DeleteOneAsync``2(``0)">
            <summary>
            Asynchronously deletes a document matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="document">The document you want to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Delete.DeleteOne``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Deletes a document matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Delete.DeleteOneAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously deletes a document matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Delete.DeleteManyAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously deletes the documents matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Delete.DeleteManyAsync``2(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Asynchronously deletes a list of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="documents">The list of documents to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Delete.DeleteMany``2(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Deletes a list of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="documents">The list of documents to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Delete.DeleteMany``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Deletes the documents matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Index.GetIndexesNamesAsync``2(System.String)">
            <summary>
            Returns the names of the indexes present on a collection.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="partitionKey">An optional partition key</param>
            <returns>A list containing the names of the indexes on on the concerned collection.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Index.CreateTextIndexAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Create a text index on the given field.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Index.CreateAscendingIndexAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates an index on the given field in ascending order.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Index.CreateDescendingIndexAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates an index on the given field in descending order.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Index.CreateHashedIndexAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates a hashed index on the given field.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Index.CreateCombinedTextIndexAsync``2(System.Collections.Generic.IEnumerable{System.Linq.Expressions.Expression{System.Func{``0,System.Object}}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates a combined text index.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="fields">The fields we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Index.DropIndexAsync``2(System.String,System.String)">
            <summary>
            Drops the index given a field name
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="indexName">The name of the index</param>
            <param name="partitionKey">An optional partition key</param>
        </member>
        <member name="T:MongoDbGenericRepository.IBaseMongoRepository_Create`1">
            <summary>
            The interface exposing data insertion functionality for Key typed repositories.
            </summary>
            <typeparam name="TKey"></typeparam>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Create`1.AddOneAsync``1(``0)">
            <summary>
            Asynchronously adds a document to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="document">The document you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Create`1.AddOne``1(``0)">
            <summary>
            Adds a document to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="document">The document you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Create`1.AddManyAsync``1(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Asynchronously adds a list of documents to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="documents">The documents you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Create`1.AddMany``1(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Adds a list of documents to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="documents">The documents you want to add.</param>
        </member>
        <member name="T:MongoDbGenericRepository.BaseMongoRepository`1">
            <summary>
            The base Repository, it is meant to be inherited from by your custom custom MongoRepository implementation.
            Its constructor must be given a connection string and a database name.
            </summary>
            <summary>
            The base Repository, it is meant to be inherited from by your custom custom MongoRepository implementation.
            Its constructor must be given a connection string and a database name.
            </summary>
            <summary>
            The base Repository, it is meant to be inherited from by your custom custom MongoRepository implementation.
            Its constructor must be given a connection string and a database name.
            </summary>
            <typeparam name="TKey">The type of the document Id.</typeparam>
        </member>
        <member name="P:MongoDbGenericRepository.BaseMongoRepository`1.MongoDbCreator">
            <summary>
            The MongoDb accessor to insert data.
            </summary>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.AddOneAsync``1(``0)">
            <summary>
            Asynchronously adds a document to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="document">The document you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.AddOne``1(``0)">
            <summary>
            Adds a document to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="document">The document you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.AddManyAsync``1(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Asynchronously adds a list of documents to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="documents">The documents you want to add.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.AddMany``1(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Adds a list of documents to the collection.
            Populates the Id and AddedAtUtc fields if necessary.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="documents">The documents you want to add.</param>
        </member>
        <member name="P:MongoDbGenericRepository.BaseMongoRepository`1.MongoDbEraser">
            <summary>
            The MongoDb accessor to delete data.
            </summary>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.DeleteOne``1(``0)">
            <summary>
            Deletes a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="document">The document you want to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.DeleteOneAsync``1(``0)">
            <summary>
            Asynchronously deletes a document matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="document">The document you want to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.DeleteOne``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Deletes a document matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.DeleteOneAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously deletes a document matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.DeleteManyAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously deletes the documents matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.DeleteManyAsync``1(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Asynchronously deletes a list of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="documents">The list of documents to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.DeleteMany``1(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Deletes a list of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="documents">The list of documents to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.DeleteMany``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Deletes the documents matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="P:MongoDbGenericRepository.BaseMongoRepository`1.MongoDbIndexHandler">
            <summary>
            The MongoDb accessor to manage indexes.
            </summary>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.GetIndexesNamesAsync``1(System.String)">
            <summary>
            Returns the names of the indexes present on a collection.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="partitionKey">An optional partition key</param>
            <returns>A list containing the names of the indexes on on the concerned collection.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.CreateTextIndexAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Create a text index on the given field.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.CreateAscendingIndexAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates an index on the given field in ascending order.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.CreateDescendingIndexAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates an index on the given field in descending order.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.CreateHashedIndexAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates a hashed index on the given field.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.CreateCombinedTextIndexAsync``1(System.Collections.Generic.IEnumerable{System.Linq.Expressions.Expression{System.Func{``0,System.Object}}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates a combined text index.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="fields">The fields we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.DropIndexAsync``1(System.String,System.String)">
            <summary>
            Drops the index given a field name
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="indexName">The name of the index</param>
            <param name="partitionKey">An optional partition key</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.#ctor(System.String,System.String)">
            <summary>
            The constructor taking a connection string and a database name.
            </summary>
            <param name="connectionString">The connection string of the MongoDb server.</param>
            <param name="databaseName">The name of the database against which you want to perform operations.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.#ctor(MongoDbGenericRepository.IMongoDbContext)">
            <summary>
            The contructor taking a <see cref="T:MongoDbGenericRepository.IMongoDbContext"/>.
            </summary>
            <param name="mongoDbContext">A mongodb context implementing <see cref="T:MongoDbGenericRepository.IMongoDbContext"/></param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.#ctor(MongoDB.Driver.IMongoDatabase)">
            <summary>
            The contructor taking a <see cref="T:MongoDB.Driver.IMongoDatabase"/>.
            </summary>
            <param name="mongoDatabase">A mongodb context implementing <see cref="T:MongoDB.Driver.IMongoDatabase"/></param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.HandlePartitioned``1(System.String)">
            <summary>
            Gets a collections for a potentially partitioned document type.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <param name="partitionKey">The collection partition key.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.GetCollection``1(System.String)">
            <summary>
            Gets a collections for the type TDocument with a partition key.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <param name="partitionKey">The collection partition key.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.UpdateOneAsync``1(``0)">
            <summary>
            Asynchronously Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="modifiedDocument">The document with the modifications you want to persist.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.UpdateOne``1(``0)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="modifiedDocument">The document with the modifications you want to persist.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.UpdateOneAsync``1(``0,MongoDB.Driver.UpdateDefinition{``0})">
            <summary>
            Takes a document you want to modify and applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="update">The update definition for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.UpdateOne``1(``0,MongoDB.Driver.UpdateDefinition{``0})">
            <summary>
            Takes a document you want to modify and applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="update">The update definition for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.UpdateOne``2(``0,System.Linq.Expressions.Expression{System.Func{``0,``1}},``1)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.UpdateOneAsync``2(``0,System.Linq.Expressions.Expression{System.Func{``0,``1}},``1)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.UpdateOne``2(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.UpdateOne``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            For the entity selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.UpdateOneAsync``2(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.UpdateOneAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            For the entity selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.UpdateManyAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.UpdateManyAsync``2(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.UpdateManyAsync``1(MongoDB.Driver.FilterDefinition{``0},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.UpdateManyAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.UpdateMany``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.UpdateMany``2(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.UpdateMany``1(MongoDB.Driver.FilterDefinition{``0},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.BaseMongoRepository`1.UpdateMany``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="T:MongoDbGenericRepository.IBaseMongoRepository_Delete`1">
            <summary>
            The interface exposing deletion functionality for Key typed repositories.
            </summary>
            <typeparam name="TKey">The type of the document Id.</typeparam>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Delete`1.DeleteOne``1(``0)">
            <summary>
            Deletes a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="document">The document you want to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Delete`1.DeleteOneAsync``1(``0)">
            <summary>
            Asynchronously deletes a document matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="document">The document you want to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Delete`1.DeleteOne``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Deletes a document matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Delete`1.DeleteOneAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously deletes a document matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Delete`1.DeleteManyAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously deletes the documents matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Delete`1.DeleteManyAsync``1(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Asynchronously deletes a list of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="documents">The list of documents to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Delete`1.DeleteMany``1(System.Collections.Generic.IEnumerable{``0})">
            <summary>
            Deletes a list of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="documents">The list of documents to delete.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Delete`1.DeleteMany``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Deletes the documents matching the condition of the LINQ expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The number of documents deleted.</returns>
        </member>
        <member name="T:MongoDbGenericRepository.IBaseMongoRepository_Index`1">
            <summary>
            The interface exposing index management functionality for Key typed repositories.
            </summary>
            <typeparam name="TKey"></typeparam>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Index`1.GetIndexesNamesAsync``1(System.String)">
            <summary>
            Returns the names of the indexes present on a collection.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="partitionKey">An optional partition key</param>
            <returns>A list containing the names of the indexes on on the concerned collection.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Index`1.CreateTextIndexAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Create a text index on the given field.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Index`1.CreateAscendingIndexAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates an index on the given field in ascending order.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Index`1.CreateDescendingIndexAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates an index on the given field in descending order.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Index`1.CreateHashedIndexAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Object}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates a hashed index on the given field.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="field">The field we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Index`1.CreateCombinedTextIndexAsync``1(System.Collections.Generic.IEnumerable{System.Linq.Expressions.Expression{System.Func{``0,System.Object}}},MongoDbGenericRepository.Models.IndexCreationOptions,System.String)">
            <summary>
            Creates a combined text index.
            IndexCreationOptions can be supplied to further specify 
            how the creation should be done.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="fields">The fields we want to index.</param>
            <param name="indexCreationOptions">Options for creating an index.</param>
            <param name="partitionKey">An optional partition key.</param>
            <returns>The result of the create index operation.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Index`1.DropIndexAsync``1(System.String,System.String)">
            <summary>
            Drops the index given a field name
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="indexName">The name of the index</param>
            <param name="partitionKey">An optional partition key</param>
        </member>
        <member name="T:MongoDbGenericRepository.IBaseMongoRepository`1">
            <summary>
            The interface exposing all the CRUD and Index functionalities for Key typed repositories.
            </summary>
            <typeparam name="TKey">The type of the document Id.</typeparam>
        </member>
        <member name="T:MongoDbGenericRepository.ReadOnlyMongoRepository`1">
            <summary>
            The base Repository, it is meant to be inherited from by your custom custom MongoRepository implementation.
            Its constructor must be given a connection string and a database name.
            </summary>
        </member>
        <member name="P:MongoDbGenericRepository.ReadOnlyMongoRepository`1.ConnectionString">
            <summary>
            The connection string.
            </summary>
        </member>
        <member name="P:MongoDbGenericRepository.ReadOnlyMongoRepository`1.DatabaseName">
            <summary>
            The database name.
            </summary>
        </member>
        <member name="F:MongoDbGenericRepository.ReadOnlyMongoRepository`1.MongoDbContext">
            <summary>
            The MongoDbContext
            </summary>
        </member>
        <member name="F:MongoDbGenericRepository.ReadOnlyMongoRepository`1.MongoDbReader">
            <summary>
            A MongoDb Reader for read operations
            </summary>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.#ctor(System.String,System.String)">
            <summary>
            The constructor taking a connection string and a database name.
            </summary>
            <param name="connectionString">The connection string of the MongoDb server.</param>
            <param name="databaseName">The name of the database against which you want to perform operations.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.#ctor(MongoDB.Driver.IMongoDatabase)">
            <summary>
            The contructor taking a <see cref="T:MongoDB.Driver.IMongoDatabase"/>.
            </summary>
            <param name="mongoDatabase">A mongodb context implementing <see cref="T:MongoDB.Driver.IMongoDatabase"/></param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.#ctor(MongoDbGenericRepository.IMongoDbContext)">
            <summary>
            The contructor taking a <see cref="T:MongoDbGenericRepository.IMongoDbContext"/>.
            </summary>
            <param name="mongoDbContext">A mongodb context implementing <see cref="T:MongoDbGenericRepository.IMongoDbContext"/></param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.GetByIdAsync``1(`0,System.String)">
            <summary>
            Asynchronously returns one document given its id.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="id">The Id of the document you want to get.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.GetById``1(`0,System.String)">
            <summary>
            Returns one document given its id.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="id">The Id of the document you want to get.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.GetOneAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously returns one document given an expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.GetOne``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns one document given an expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.GetCursor``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns a collection cursor.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.AnyAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns true if any of the document of the collection matches the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.Any``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns true if any of the document of the collection matches the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.GetAllAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously returns a list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.GetAll``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns a list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.CountAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously counts how many documents match the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partitionKey</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.Count``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Counts how many documents match the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partitionKey</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.GetByMaxAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="maxValueSelector">A property selector to order by descending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.GetByMax``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="maxValueSelector">A property selector to order by descending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.GetByMinAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="minValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.GetByMin``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="minValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.GetMaxValueAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Gets the maximum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="maxValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.GetMaxValue``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Gets the maximum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="maxValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.GetMinValueAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Gets the minimum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="minValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.GetMinValue``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Gets the minimum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="minValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.SumByAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Int32}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.SumByAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Decimal}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.SumBy``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Int32}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.SumBy``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Decimal}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.ProjectOneAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Asynchronously returns a projected document matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.ProjectOne``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Returns a projected document matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.ProjectManyAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Asynchronously returns a list of projected documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.ProjectMany``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Asynchronously returns a list of projected documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.GroupBy``3(System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{System.Linq.IGrouping{``1,``0},``2}},System.String)">
            <summary>
            Groups a collection of documents given a grouping criteria, 
            and returns a dictionary of listed document groups with keys having the different values of the grouping criteria.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TGroupKey">The type of the grouping criteria.</typeparam>
            <typeparam name="TProjection">The type of the projected group.</typeparam>
            <param name="groupingCriteria">The grouping criteria.</param>
            <param name="groupProjection">The projected group result.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.GroupBy``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{System.Linq.IGrouping{``1,``0},``2}},System.String)">
            <summary>
            Groups filtered a collection of documents given a grouping criteria, 
            and returns a dictionary of listed document groups with keys having the different values of the grouping criteria.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TGroupKey">The type of the grouping criteria.</typeparam>
            <typeparam name="TProjection">The type of the projected group.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="groupingCriteria">The grouping criteria.</param>
            <param name="groupProjection">The projected group result.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.GetSortedPaginatedAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.Boolean,System.Int32,System.Int32,System.String)">
            <summary>
            Asynchronously returns a paginated list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="sortSelector">The property selector.</param>
            <param name="ascending">Order of the sorting.</param>
            <param name="skipNumber">The number of documents you want to skip. Default value is 0.</param>
            <param name="takeNumber">The number of documents you want to take. Default value is 50.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository`1.GetSortedPaginatedAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},MongoDB.Driver.SortDefinition{``0},System.Int32,System.Int32,System.String)">
            <summary>
            Asynchronously returns a paginated list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="sortDefinition">The sort definition.</param>
            <param name="skipNumber">The number of documents you want to skip. Default value is 0.</param>
            <param name="takeNumber">The number of documents you want to take. Default value is 50.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update`1.UpdateOneAsync``1(``0)">
            <summary>
            Asynchronously Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="modifiedDocument">The document with the modifications you want to persist.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update`1.UpdateOne``1(``0)">
            <summary>
            Updates a document.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="modifiedDocument">The document with the modifications you want to persist.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update`1.UpdateOneAsync``1(``0,MongoDB.Driver.UpdateDefinition{``0})">
            <summary>
            Takes a document you want to modify and applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="update">The update definition for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update`1.UpdateOne``1(``0,MongoDB.Driver.UpdateDefinition{``0})">
            <summary>
            Takes a document you want to modify and applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="update">The update definition for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update`1.UpdateOne``2(``0,System.Linq.Expressions.Expression{System.Func{``0,``1}},``1)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update`1.UpdateOneAsync``2(``0,System.Linq.Expressions.Expression{System.Func{``0,``1}},``1)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="documentToModify">The document you want to modify.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update`1.UpdateOne``2(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update`1.UpdateOne``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            For the entity selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update`1.UpdateOneAsync``2(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            Updates the property field with the given value update a property field in entities.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update`1.UpdateOneAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            For the entity selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update`1.UpdateManyAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update`1.UpdateManyAsync``2(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update`1.UpdateManyAsync``1(MongoDB.Driver.FilterDefinition{``0},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update`1.UpdateManyAsync``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update`1.UpdateMany``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The partition key for the document.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update`1.UpdateMany``2(MongoDB.Driver.FilterDefinition{``0},System.Linq.Expressions.Expression{System.Func{``0,``1}},``1,System.String)">
            <summary>
            For the entities selected by the filter, updates the property field with the given value.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TField">The type of the field.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="field">The field selector.</param>
            <param name="value">The new value of the property field.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update`1.UpdateMany``1(MongoDB.Driver.FilterDefinition{``0},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.IBaseMongoRepository_Update`1.UpdateMany``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},MongoDB.Driver.UpdateDefinition{``0},System.String)">
            <summary>
            For the entities selected by the filter, applies the update you have defined in MongoDb.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="updateDefinition">The update definition to apply.</param>
            <param name="partitionKey">The value of the partition key.</param>
        </member>
        <member name="T:MongoDbGenericRepository.Models.Document">
            <summary>
            This class represents a basic document that can be stored in MongoDb.
            Your document must implement this class in order for the MongoDbRepository to handle them.
            </summary>
        </member>
        <member name="M:MongoDbGenericRepository.Models.Document.#ctor">
            <summary>
            The document constructor
            </summary>
        </member>
        <member name="P:MongoDbGenericRepository.Models.Document.Id">
            <summary>
            The Id of the document
            </summary>
        </member>
        <member name="P:MongoDbGenericRepository.Models.Document.AddedAtUtc">
            <summary>
            The datetime in UTC at which the document was added.
            </summary>
        </member>
        <member name="P:MongoDbGenericRepository.Models.Document.Version">
            <summary>
            The version of the schema of the document
            </summary>
        </member>
        <member name="T:MongoDbGenericRepository.Models.IDocument`1">
            <summary>
            This class represents a basic document that can be stored in MongoDb.
            Your document must implement this class in order for the MongoDbRepository to handle them.
            </summary>
        </member>
        <member name="P:MongoDbGenericRepository.Models.IDocument`1.Id">
            <summary>
            The Primary Key, which must be decorated with the [BsonId] attribute 
            if you want the MongoDb C# driver to consider it to be the document ID.
            </summary>
        </member>
        <member name="P:MongoDbGenericRepository.Models.IDocument`1.Version">
            <summary>
            A version number, to indicate the version of the schema.
            </summary>
        </member>
        <member name="T:MongoDbGenericRepository.Models.IDocument">
            <summary>
            This class represents a basic document that can be stored in MongoDb.
            Your document must implement this class in order for the MongoDbRepository to handle them.
            </summary>
        </member>
        <member name="T:MongoDbGenericRepository.Models.IndexCreationOptions">
            <summary>
            Options for creating an index.
            </summary>
        </member>
        <member name="P:MongoDbGenericRepository.Models.IndexCreationOptions.Unique">
            <summary>
            Gets or sets a value indicating whether the index is a unique index.
            </summary> 
        </member>
        <member name="P:MongoDbGenericRepository.Models.IndexCreationOptions.TextIndexVersion">
            <summary>
            Gets or sets the index version for text indexes.
            </summary>  
        </member>
        <member name="P:MongoDbGenericRepository.Models.IndexCreationOptions.SphereIndexVersion">
            <summary>
            Gets or sets the index version for 2dsphere indexes.
            </summary>
        </member>
        <member name="P:MongoDbGenericRepository.Models.IndexCreationOptions.Sparse">
            <summary>
            Gets or sets a value indicating whether the index is a sparse index.
            </summary>   
        </member>
        <member name="P:MongoDbGenericRepository.Models.IndexCreationOptions.Name">
            <summary>
            Gets or sets the index name.
            </summary>  
        </member>
        <member name="P:MongoDbGenericRepository.Models.IndexCreationOptions.Min">
            <summary>
            Gets or sets the min value for 2d indexes.
            </summary>   
        </member>
        <member name="P:MongoDbGenericRepository.Models.IndexCreationOptions.Max">
            <summary>
            Gets or sets the max value for 2d indexes.
            </summary>
        </member>
        <member name="P:MongoDbGenericRepository.Models.IndexCreationOptions.LanguageOverride">
            <summary>
            Gets or sets the language override.
            </summary>   
        </member>
        <member name="P:MongoDbGenericRepository.Models.IndexCreationOptions.ExpireAfter">
            <summary>
            Gets or sets when documents expire (used with TTL indexes).
            </summary> 
        </member>
        <member name="P:MongoDbGenericRepository.Models.IndexCreationOptions.DefaultLanguage">
            <summary>
            Gets or sets the default language.
            </summary>  
        </member>
        <member name="P:MongoDbGenericRepository.Models.IndexCreationOptions.BucketSize">
            <summary>
            Gets or sets the size of a geohash bucket.
            </summary>   
        </member>
        <member name="P:MongoDbGenericRepository.Models.IndexCreationOptions.Bits">
            <summary>
            Gets or sets the precision, in bits, used with geohash indexes.
            </summary>   
        </member>
        <member name="P:MongoDbGenericRepository.Models.IndexCreationOptions.Background">
            <summary>
            Gets or sets a value indicating whether to create the index in the background.
            </summary> 
        </member>
        <member name="P:MongoDbGenericRepository.Models.IndexCreationOptions.Version">
            <summary>
            Gets or sets the version of the index.
            </summary>   
        </member>
        <member name="T:MongoDbGenericRepository.Models.IPartitionedDocument">
            <summary>
            This class represents a document that can be inserted in a collection that can be partitioned.
            The partition key allows for the creation of different collections having the same document schema.
            This can be useful if you are planning to build a Software as a Service (SaaS) Platform, or if you want to reduce indexing.
            You could for example insert Logs in different collections based on the week and year they where created, or their Log category/source.
            </summary>
        </member>
        <member name="P:MongoDbGenericRepository.Models.IPartitionedDocument.PartitionKey">
            <summary>
            The partition key used to partition your collection.
            </summary>
        </member>
        <member name="T:MongoDbGenericRepository.Models.PartitionedDocument">
            <summary>
            This class represents a document that can be inserted in a collection that can be partitioned.
            The partition key allows for the creation of different collections having the same document schema.
            This can be useful if you are planning to build a Software as a Service (SaaS) Platform, or if you want to reduce indexing.
            You could for example insert Logs in different collections based on the week and year they where created, or their Log category/source.
            </summary>
        </member>
        <member name="M:MongoDbGenericRepository.Models.PartitionedDocument.#ctor(System.String)">
            <summary>
            The constructor, it needs a partition key.
            </summary>
            <param name="partitionKey"></param>
        </member>
        <member name="P:MongoDbGenericRepository.Models.PartitionedDocument.PartitionKey">
            <summary>
            The name of the property used for partitioning the collection
            This will not be inserted into the collection.
            This partition key will be prepended to the collection name to create a new collection.
            </summary>
        </member>
        <member name="T:MongoDbGenericRepository.MongoDbContext">
            <summary>
            The MongoDb context
            </summary>
        </member>
        <member name="P:MongoDbGenericRepository.MongoDbContext.Client">
            <summary>
            The IMongoClient from the official MongoDB driver
            </summary>
        </member>
        <member name="P:MongoDbGenericRepository.MongoDbContext.Database">
            <summary>
            The IMongoDatabase from the official MongoDB driver
            </summary>
        </member>
        <member name="M:MongoDbGenericRepository.MongoDbContext.#ctor(MongoDB.Driver.IMongoDatabase)">
            <summary>
            The constructor of the MongoDbContext, it needs an object implementing <see cref="T:MongoDB.Driver.IMongoDatabase"/>.
            </summary>
            <param name="mongoDatabase">An object implementing IMongoDatabase</param>
        </member>
        <member name="M:MongoDbGenericRepository.MongoDbContext.#ctor(System.String,System.String)">
            <summary>
            The constructor of the MongoDbContext, it needs a connection string and a database name. 
            </summary>
            <param name="connectionString">The connections string.</param>
            <param name="databaseName">The name of your database.</param>
        </member>
        <member name="M:MongoDbGenericRepository.MongoDbContext.#ctor(System.String)">
            <summary>
            Initialise an instance of a <see cref="T:MongoDbGenericRepository.IMongoDbContext"/> using a connection string
            </summary>
            <param name="connectionString"></param>
        </member>
        <member name="M:MongoDbGenericRepository.MongoDbContext.#ctor(MongoDB.Driver.MongoClient,System.String)">
            <summary>
            The constructor of the MongoDbContext, it needs a connection string and a database name. 
            </summary>
            <param name="client">The MongoClient.</param>
            <param name="databaseName">The name of your database.</param>
        </member>
        <member name="M:MongoDbGenericRepository.MongoDbContext.GetCollection``1(System.String)">
            <summary>
            Returns a collection for a document type. Also handles document types with a partition key.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="partitionKey">The optional value of the partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.MongoDbContext.DropCollection``1(System.String)">
            <summary>
            Drops a collection, use very carefully.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
        </member>
        <member name="M:MongoDbGenericRepository.MongoDbContext.SetGuidRepresentation(MongoDB.Bson.GuidRepresentation)">
            <summary>
            Sets the Guid representation of the MongoDB Driver.
            </summary>
            <param name="guidRepresentation">The new value of the GuidRepresentation</param>
        </member>
        <member name="M:MongoDbGenericRepository.MongoDbContext.GetAttributeCollectionName``1">
            <summary>
            Extracts the CollectionName attribute from the entity type, if any.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <returns>The name of the collection in which the TDocument is stored.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.MongoDbContext.InitializeGuidRepresentation">
            <summary>
            Initialize the Guid representation of the MongoDB Driver.
            Override this method to change the default GuidRepresentation.
            </summary>
        </member>
        <member name="M:MongoDbGenericRepository.MongoDbContext.GetCollectionName``1(System.String)">
            <summary>
            Given the document type and the partition key, returns the name of the collection it belongs to.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <param name="partitionKey">The value of the partition key.</param>
            <returns>The name of the collection.</returns>
        </member>
        <member name="M:MongoDbGenericRepository.MongoDbContext.Pluralize``1">
            <summary>
            Very naively pluralizes a TDocument type name.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <returns>The pluralized document name.</returns>
        </member>
        <member name="T:MongoDbGenericRepository.ReadOnlyMongoRepository">
            <summary>
            The base Repository, it is meant to be inherited from by your custom custom MongoRepository implementation.
            Its constructor must be given a connection string and a database name.
            </summary>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.#ctor(System.String,System.String)">
            <summary>
            The constructor taking a connection string and a database name.
            </summary>
            <param name="connectionString">The connection string of the MongoDb server.</param>
            <param name="databaseName">The name of the database against which you want to perform operations.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.#ctor(MongoDbGenericRepository.IMongoDbContext)">
            <summary>
            The contructor taking a <see cref="T:MongoDbGenericRepository.IMongoDbContext"/>.
            </summary>
            <param name="mongoDbContext">A mongodb context implementing <see cref="T:MongoDbGenericRepository.IMongoDbContext"/></param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.#ctor(MongoDB.Driver.IMongoDatabase)">
            <summary>
            The contructor taking a <see cref="T:MongoDB.Driver.IMongoDatabase"/>.
            </summary>
            <param name="mongoDatabase">A mongodb context implementing <see cref="T:MongoDB.Driver.IMongoDatabase"/></param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GetByIdAsync``2(``1,System.String)">
            <summary>
            Asynchronously returns one document given its id.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="id">The Id of the document you want to get.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GetById``2(``1,System.String)">
            <summary>
            Returns one document given its id.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="id">The Id of the document you want to get.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GetOneAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously returns one document given an expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GetOne``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns one document given an expression filter.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GetCursor``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns a collection cursor.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.AnyAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns true if any of the document of the collection matches the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.Any``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns true if any of the document of the collection matches the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GetAllAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously returns a list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GetAll``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Returns a list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.CountAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Asynchronously counts how many documents match the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partitionKey</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.Count``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.String)">
            <summary>
            Counts how many documents match the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="partitionKey">An optional partitionKey</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GetByMaxAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="maxValueSelector">A property selector to order by descending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GetByMax``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="maxValueSelector">A property selector to order by descending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GetByMinAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the minimum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="minValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GetByMin``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.String)">
            <summary>
            Gets the document with the minimum value of a specified property in a MongoDB collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="minValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GetMaxValueAsync``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.String)">
            <summary>
            Gets the maximum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="maxValueSelector">A property selector to select the max value.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GetMaxValue``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.String)">
            <summary>
            Gets the maximum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="maxValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partitionKey.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GetMinValueAsync``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.String)">
            <summary>
            Gets the minimum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="minValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GetMinValue``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``2}},System.String)">
            <summary>
            Gets the minimum value of a property in a mongodb collections that is satisfying the filter.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <typeparam name="TValue">The type of the value used to order the query.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="minValueSelector">A property selector to order by ascending.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.SumByAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Int32}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.SumBy``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Int32}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.SumByAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Decimal}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.SumBy``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Decimal}},System.String)">
            <summary>
            Sums the values of a selected field for a given filtered collection of documents.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="selector">The field you want to sum.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.ProjectOneAsync``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Asynchronously returns a projected document matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.ProjectOne``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Returns a projected document matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.ProjectManyAsync``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Asynchronously returns a list of projected documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.ProjectMany``3(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.String)">
            <summary>
            Asynchronously returns a list of projected documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TProjection">The type representing the model you want to project to.</typeparam>
            <param name="filter">The document filter.</param>
            <param name="projection">The projection expression.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GroupBy``4(System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{System.Linq.IGrouping{``1,``0},``2}},System.String)">
            <summary>
            Groups filtered a collection of documents given a grouping criteria, 
            and returns a dictionary of listed document groups with keys having the different values of the grouping criteria.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TGroupKey">The type of the grouping criteria.</typeparam>
            <typeparam name="TProjection">The type of the projected group.</typeparam>
            <param name="groupingCriteria">The grouping criteria.</param>
            <param name="groupProjection">The projected group result.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GroupBy``4(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,``1}},System.Linq.Expressions.Expression{System.Func{System.Linq.IGrouping{``1,``0},``2}},System.String)">
            <summary>
            Groups filtered a collection of documents given a grouping criteria, 
            and returns a dictionary of listed document groups with keys having the different values of the grouping criteria.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <typeparam name="TGroupKey">The type of the grouping criteria.</typeparam>
            <typeparam name="TProjection">The type of the projected group.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="groupingCriteria">The grouping criteria.</param>
            <param name="groupProjection">The projected group result.</param>
            <param name="partitionKey">The partition key of your document, if any.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GetSortedPaginatedAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Object}},System.Boolean,System.Int32,System.Int32,System.String)">
            <summary>
            Asynchronously returns a paginated list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="sortSelector">The property selector.</param>
            <param name="ascending">Order of the sorting.</param>
            <param name="skipNumber">The number of documents you want to skip. Default value is 0.</param>
            <param name="takeNumber">The number of documents you want to take. Default value is 50.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GetSortedPaginatedAsync``2(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},MongoDB.Driver.SortDefinition{``0},System.Int32,System.Int32,System.String)">
            <summary>
            Asynchronously returns a paginated list of the documents matching the filter condition.
            </summary>
            <typeparam name="TDocument">The type representing a Document.</typeparam>
            <typeparam name="TKey">The type of the primary key for a Document.</typeparam>
            <param name="filter">A LINQ expression filter.</param>
            <param name="sortDefinition">The sort definition.</param>
            <param name="skipNumber">The number of documents you want to skip. Default value is 0.</param>
            <param name="takeNumber">The number of documents you want to take. Default value is 50.</param>
            <param name="partitionKey">An optional partition key.</param>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.HandlePartitioned``2(``0)">
            <summary>
            Gets a collections for a potentially partitioned document type.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="document">The document.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.HandlePartitioned``2(System.String)">
            <summary>
            Gets a collections for a potentially partitioned document type.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="partitionKey">The collection partition key.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.HandlePartitioned``1(``0)">
            <summary>
            Gets a collections for a potentially partitioned document type.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <param name="document">The document.</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.ReadOnlyMongoRepository.GetCollection``2(System.String)">
            <summary>
            Gets a collections for the type TDocument with a partition key.
            </summary>
            <typeparam name="TDocument">The document type.</typeparam>
            <typeparam name="TKey">The type of the primary key.</typeparam>
            <param name="partitionKey">The collection partition key.</param>
            <returns></returns>
        </member>
        <member name="T:MongoDbGenericRepository.Utils.IdGenerator">
            <summary>
            The IdGenerator instance, used to generate Ids of different types.
            </summary>
        </member>
        <member name="M:MongoDbGenericRepository.Utils.IdGenerator.GetId``1">
            <summary>
            Generates a random value of a given type.
            </summary>
            <typeparam name="TKey">The type of the value to generate.</typeparam>
            <returns>A value of type TKey.</returns>
        </member>
        <member name="T:MongoDbGenericRepository.Utils.Vocabularies">
            <summary>
            Container for registered Vocabularies.  At present, only a single vocabulary is supported: Default.
            </summary>
        </member>
        <member name="P:MongoDbGenericRepository.Utils.Vocabularies.Default">
            <summary>
            The default vocabulary used for singular/plural irregularities.
            Rules can be added to this vocabulary and will be picked up by called to Singularize() and Pluralize().
            At this time, multiple vocabularies and removing existing rules are not supported.
            </summary>
        </member>
        <member name="T:MongoDbGenericRepository.Utils.Vocabulary">
            <summary>
            A container for exceptions to simple pluralization/singularization rules.
            Vocabularies.Default contains an extensive list of rules for US English.
            At this time, multiple vocabularies and removing existing rules are not supported.
            </summary>
        </member>
        <member name="M:MongoDbGenericRepository.Utils.Vocabulary.AddIrregular(System.String,System.String,System.Boolean)">
            <summary>
            Adds a word to the vocabulary which cannot easily be pluralized/singularized by RegEx, e.g. "person" and "people".
            </summary>
            <param name="singular">The singular form of the irregular word, e.g. "person".</param>
            <param name="plural">The plural form of the irregular word, e.g. "people".</param>
            <param name="matchEnding">True to match these words on their own as well as at the end of longer words. False, otherwise.</param>
        </member>
        <member name="M:MongoDbGenericRepository.Utils.Vocabulary.AddUncountable(System.String)">
            <summary>
            Adds an uncountable word to the vocabulary, e.g. "fish".  Will be ignored when plurality is changed.
            </summary>
            <param name="word">Word to be added to the list of uncountables.</param>
        </member>
        <member name="M:MongoDbGenericRepository.Utils.Vocabulary.AddPlural(System.String,System.String)">
            <summary>
            Adds a rule to the vocabulary that does not follow trivial rules for pluralization, e.g. "bus" -> "buses"
            </summary>
            <param name="rule">RegEx to be matched, case insensitive, e.g. "(bus)es$"</param>
            <param name="replacement">RegEx replacement  e.g. "$1"</param>
        </member>
        <member name="M:MongoDbGenericRepository.Utils.Vocabulary.AddSingular(System.String,System.String)">
            <summary>
            Adds a rule to the vocabulary that does not follow trivial rules for singularization, e.g. "vertices/indices -> "vertex/index"
            </summary>
            <param name="rule">RegEx to be matched, case insensitive, e.g. ""(vert|ind)ices$""</param>
            <param name="replacement">RegEx replacement  e.g. "$1ex"</param>
        </member>
        <member name="M:MongoDbGenericRepository.Utils.Vocabulary.Pluralize(System.String,System.Boolean)">
            <summary>
            Pluralizes the provided input considering irregular words
            </summary>
            <param name="word">Word to be pluralized</param>
            <param name="inputIsKnownToBeSingular">Normally you call Pluralize on singular words; but if you're unsure call it with false</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.Utils.Vocabulary.Singularize(System.String,System.Boolean)">
            <summary>
            Singularizes the provided input considering irregular words
            </summary>
            <param name="word">Word to be singularized</param>
            <param name="inputIsKnownToBePlural">Normally you call Singularize on plural words; but if you're unsure call it with false</param>
            <returns></returns>
        </member>
        <member name="T:MongoDbGenericRepository.Utils.InflectorExtensions">
            <summary>
            Inflector extensions
            </summary>
        </member>
        <member name="M:MongoDbGenericRepository.Utils.InflectorExtensions.Pluralize(System.String,System.Boolean)">
            <summary>
            Pluralizes the provided input considering irregular words
            </summary>
            <param name="word">Word to be pluralized</param>
            <param name="inputIsKnownToBeSingular">Normally you call Pluralize on singular words; but if you're unsure call it with false</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.Utils.InflectorExtensions.Singularize(System.String,System.Boolean)">
            <summary>
            Singularizes the provided input considering irregular words
            </summary>
            <param name="word">Word to be singularized</param>
            <param name="inputIsKnownToBePlural">Normally you call Singularize on plural words; but if you're unsure call it with false</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.Utils.InflectorExtensions.Pascalize(System.String)">
            <summary>
            By default, pascalize converts strings to UpperCamelCase also removing underscores
            </summary>
            <param name="input"></param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.Utils.InflectorExtensions.Camelize(System.String)">
            <summary>
            Same as Pascalize except that the first character is lower case
            </summary>
            <param name="input"></param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.Utils.InflectorExtensions.Underscore(System.String)">
            <summary>
            Separates the input words with underscore
            </summary>
            <param name="input">The string to be underscored</param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.Utils.InflectorExtensions.Dasherize(System.String)">
            <summary>
            Replaces underscores with dashes in the string
            </summary>
            <param name="underscoredWord"></param>
            <returns></returns>
        </member>
        <member name="M:MongoDbGenericRepository.Utils.InflectorExtensions.Hyphenate(System.String)">
            <summary>
            Replaces underscores with hyphens in the string
            </summary>
            <param name="underscoredWord"></param>
            <returns></returns>
        </member>
        <member name="T:MongoDbGenericRepository.Utils.RandomExtensions">
            <summary>
            Extensions for the random number generator <see cref="T:System.Random"/>
            </summary>
        </member>
        <member name="M:MongoDbGenericRepository.Utils.RandomExtensions.NextLong(System.Random,System.Int64,System.Int64)">
            <summary>
            Returns a random long from min (inclusive) to max (exclusive)
            </summary>
            <param name="random">The given random instance</param>
            <param name="min">The inclusive minimum bound</param>
            <param name="max">The exclusive maximum bound.  Must be greater than min</param>
        </member>
        <member name="M:MongoDbGenericRepository.Utils.RandomExtensions.NextLong(System.Random,System.Int64)">
            <summary>
            Returns a random long from 0 (inclusive) to max (exclusive)
            </summary>
            <param name="random">The given random instance</param>
            <param name="max">The exclusive maximum bound.  Must be greater than 0</param>
        </member>
        <member name="M:MongoDbGenericRepository.Utils.RandomExtensions.NextLong(System.Random)">
            <summary>
            Returns a random long over all possible values of long (except long.MaxValue, similar to
            random.Next())
            </summary>
            <param name="random">The given random instance</param>
        </member>
    </members>
</doc>
