From ff94611ee9509fff2923701126f8500795f2fd75 Mon Sep 17 00:00:00 2001 From: Alexandre SPIESER Date: Mon, 15 Mar 2021 11:38:37 +0000 Subject: [PATCH] remove legacy stuff, bump to version 1.4.7 after missed cancellation token mapping in AddOneAsync. --- .../MongoDbGenericRepository.csproj | 4 +- .../MongoDbGenericRepository.nuspec | 31 - .../lib/net452/MongoDbGenericRepository.dll | Bin 183296 -> 0 bytes .../lib/net452/MongoDbGenericRepository.xml | 5018 ----------------- .../MongoDbGenericRepository.dll | Bin 183296 -> 0 bytes .../MongoDbGenericRepository.dll | Bin 183296 -> 0 bytes 6 files changed, 2 insertions(+), 5051 deletions(-) delete mode 100644 MongoDbGenericRepository/MongoDbGenericRepository.nuspec delete mode 100644 MongoDbGenericRepository/lib/net452/MongoDbGenericRepository.dll delete mode 100644 MongoDbGenericRepository/lib/net452/MongoDbGenericRepository.xml delete mode 100644 MongoDbGenericRepository/lib/netstandard1.5/MongoDbGenericRepository.dll delete mode 100644 MongoDbGenericRepository/lib/netstandard2.0/MongoDbGenericRepository.dll diff --git a/MongoDbGenericRepository/MongoDbGenericRepository.csproj b/MongoDbGenericRepository/MongoDbGenericRepository.csproj index c22899f..7ea259d 100644 --- a/MongoDbGenericRepository/MongoDbGenericRepository.csproj +++ b/MongoDbGenericRepository/MongoDbGenericRepository.csproj @@ -4,7 +4,7 @@ net452;netstandard2.0;netstandard1.5; true MongoDbGenericRepository - 1.4.6 + 1.4.7 Alexandre Spieser MongoDb Generic Repository A generic repository implementation using the MongoDB C# Sharp 2.0 driver. @@ -15,7 +15,7 @@ Copyright 2021 (c) Alexandre Spieser. All rights reserved. MongoDb Repository Generic NoSql true - 1.4.6 + 1.4.7 https://github.com/alexandre-spieser/mongodb-generic-repository Git diff --git a/MongoDbGenericRepository/MongoDbGenericRepository.nuspec b/MongoDbGenericRepository/MongoDbGenericRepository.nuspec deleted file mode 100644 index 3f6fe6b..0000000 --- a/MongoDbGenericRepository/MongoDbGenericRepository.nuspec +++ /dev/null @@ -1,31 +0,0 @@ - - - - MongoDbGenericRepository - 1.4.5 - MongoDb Generic Repository - Alexandre Spieser - Alexandre Spieser - http://www.opensource.org/licenses/mit-license.php - https://github.com/alexandre-spieser/mongodb-generic-repository - false - A generic repository implementation using the MongoDB C# Sharp 2.0 driver. - Release notes are at https://github.com/alexandre-spieser/mongodb-generic-repository/releases - Copyright 2020 (c) Alexandre Spieser. All rights reserved. - MongoDb Repository Generic NoSql - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/MongoDbGenericRepository/lib/net452/MongoDbGenericRepository.dll b/MongoDbGenericRepository/lib/net452/MongoDbGenericRepository.dll deleted file mode 100644 index 29ac9bdf7b07a68d541ac84fe4c9eef986e333fe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 183296 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 - - - MongoDbGenericRepository - - - - - The IBaseMongoRepository interface exposes the CRUD functionality of the BaseMongoRepository. - - - - - Asynchronously returns a paginated list of the documents matching the filter condition. - - The type representing a Document. - - The number of documents you want to skip. Default value is 0. - The number of documents you want to take. Default value is 50. - An optional partition key. - - - - Asynchronously returns a paginated list of the documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - - The number of documents you want to skip. Default value is 0. - The number of documents you want to take. Default value is 50. - An optional partition key. - - - - GetAndUpdateOne with filter - - The type representing a Document. - - - - - - - - GetAndUpdateOne with filter - - The type representing a Document. - The type of the primary key for a Document. - - - - - - - - Asynchronously Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The document with the modifications you want to persist. - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The document with the modifications you want to persist. - - - - Takes a document you want to modify and applies the update you have defined in MongoDb. - - The type representing a Document. - The type of the primary key for a Document. - The document you want to modify. - The update definition for the document. - - - - Takes a document you want to modify and applies the update you have defined in MongoDb. - - The type representing a Document. - The type of the primary key for a Document. - The document you want to modify. - The update definition for the document. - - - - For the entity selected by the filter, updates the property field with the given value.. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document you want to modify. - The field selector. - The new value of the property field. - - - - For the entity selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document you want to modify. - The field selector. - The new value of the property field. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The type of the primary key for a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The type of the primary key for a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The type of the primary key for a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The type of the primary key for a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The client session. - The document with the modifications you want to persist. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The client session. - The document with the modifications you want to persist. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The client session. - The document to modify. - The update definition. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The client session. - The document to modify. - The update definition. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field to update. - The client session. - The document to modify. - The field to update. - The value of the field. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field to update. - The client session. - The document to modify. - The field to update. - The value of the field. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field to update. - The client session. - The filter for the update. - The field to update. - The value of the field. - The optional partition key. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field to update. - The client session. - The filter for the update. - The field to update. - The value of the field. - The optional partition key. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field to update. - The client session. - The filter for the update. - The field to update. - The value of the field. - The optional partition key. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field to update. - The client session. - The filter for the update. - The field to update. - The value of the field. - The optional partition key. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The client session. - The document with the modifications you want to persist. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The client session. - The document with the modifications you want to persist. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The client session. - The document to modify. - The update definition. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The client session. - The document to modify. - The update definition. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field to update. - The client session. - The document to modify. - The field to update. - The value of the field. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field to update. - The client session. - The document to modify. - The field to update. - The value of the field. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field to update. - The client session. - The filter for the update. - The field to update. - The value of the field. - The optional partition key. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field to update. - The client session. - The filter for the update. - The field to update. - The value of the field. - The optional partition key. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field to update. - The client session. - The filter for the update. - The field to update. - The value of the field. - The optional partition key. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field to update. - The client session. - The filter for the update. - The field to update. - The value of the field. - The optional partition key. - The optional cancellation token. - - - - - Asynchronously Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The document with the modifications you want to persist. - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The document with the modifications you want to persist. - - - - Takes a document you want to modify and applies the update you have defined in MongoDb. - - The type representing a Document. - The type of the primary key for a Document. - The document you want to modify. - The update definition for the document. - - - - Takes a document you want to modify and applies the update you have defined in MongoDb. - - The type representing a Document. - The type of the primary key for a Document. - The document you want to modify. - The update definition for the document. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document you want to modify. - The field selector. - The new value of the property field. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document you want to modify. - The field selector. - The new value of the property field. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entity selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - Updates the property field with the given value. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entity selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entities selected by the filter, apply the update definition. - - The type representing a Document. - The type of the primary key for a Document. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entities selected by the filter, apply the update definition. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The update definition. - The value of the partition key. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entities selected by the filter, apply the update definition. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The update definition. - The value of the partition key. - - - - Gets a collections for a potentially partitioned document type. - - The document type. - The type of the primary key. - The document. - - - - - Gets a collections for the type TDocument with a partition key. - - The document type. - The type of the primary key. - The collection partition key. - - - - - Gets a collections for a potentially partitioned document type. - - The document type. - The type of the primary key. - The collection partition key. - - - - - Converts a LINQ expression of TDocument, TValue to a LINQ expression of TDocument, object - - The document type. - The type of the value. - The expression to convert - - - - Maps a IndexCreationOptions object to a MongoDB.Driver.CreateIndexOptions object - - The options for creating an index. - - - - - Gets the minimum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the primary key. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by ascending. - An optional partition key. - - - - Gets the minimum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the primary key. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by descending. - An optional partition key. - - - - Asynchronously adds a document to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The type of the primary key for a Document. - The document you want to add. - - - - Adds a document to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The type of the primary key for a Document. - The document you want to add. - - - - Asynchronously adds a list of documents to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The type of the primary key for a Document. - The documents you want to add. - - - - Adds a list of documents to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The type of the primary key for a Document. - The documents you want to add. - - - - Sets the value of the document Id if it is not set already. - - The document type. - The type of the primary key. - The document. - - - - Deletes a document. - - The type representing a Document. - The type of the primary key for a Document. - The document you want to delete. - The number of documents deleted. - - - - Asynchronously deletes a document matching the condition of the LINQ expression filter. - - The type representing a Document. - The type of the primary key for a Document. - The document you want to delete. - The number of documents deleted. - - - - Deletes a document matching the condition of the LINQ expression filter. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Asynchronously deletes a document matching the condition of the LINQ expression filter. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Asynchronously deletes the documents matching the condition of the LINQ expression filter. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Asynchronously deletes a list of documents. - - The type representing a Document. - The type of the primary key for a Document. - The list of documents to delete. - The number of documents deleted. - - - - Deletes a list of documents. - - The type representing a Document. - The type of the primary key for a Document. - The list of documents to delete. - The number of documents deleted. - - - - Deletes the documents matching the condition of the LINQ expression filter. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Returns the names of the indexes present on a collection. - - The type representing a Document. - The type of the primary key for a Document. - An optional partition key - A list containing the names of the indexes on on the concerned collection. - - - - Create a text index on the given field. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The type of the primary key for a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Creates an index on the given field in ascending order. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The type of the primary key for a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Creates an index on the given field in descending order. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The type of the primary key for a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Creates a hashed index on the given field. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The type of the primary key for a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Creates a combined text index. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The type of the primary key for a Document. - The fields we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Drops the index given a field name - - The type representing a Document. - The type of the primary key for a Document. - The name of the index - An optional partition key - - - - Asynchronously returns one document given its id. - - The type representing a Document. - The type of the primary key for a Document. - The Id of the document you want to get. - An optional partition key. - - - - Returns one document given its id. - - The type representing a Document. - The type of the primary key for a Document. - The Id of the document you want to get. - An optional partition key. - - - - Asynchronously returns one document given an expression filter. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns one document given an expression filter. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns a collection cursor. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns true if any of the document of the collection matches the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns true if any of the document of the collection matches the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Asynchronously returns a list of the documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns a list of the documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Asynchronously counts how many documents match the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partitionKey - - - - Counts how many documents match the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partitionKey - - - - Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - The type of the primary key. - A LINQ expression filter. - A property selector to order by descending. - An optional partitionKey. - - - - Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - The type of the primary key. - A LINQ expression filter. - A property selector to order by descending. - An optional partitionKey. - - - - Gets the document with the minimum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - The type of the primary key. - A LINQ expression filter. - A property selector to order by ascending. - An optional partitionKey. - - - - Gets the document with the minimum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - The type of the primary key. - A LINQ expression filter. - A property selector to order by ascending. - An optional partitionKey. - - - - Gets the maximum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the primary key. - A LINQ expression filter. - A property selector to order by ascending. - An optional partitionKey. - - - - Gets the maximum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the primary key. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by ascending. - An optional partitionKey. - - - - Gets the minimum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the primary key. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by ascending. - An optional partition key. - - - - Gets the minimum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the primary key. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by ascending. - An optional partition key. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - 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. - - The type representing a Document. - The type of the primary key for a Document. - The type of the grouping criteria. - The type of the projected group. - The grouping criteria. - The projected group result. - The partition key of your document, if any. - - - - 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. - - The type representing a Document. - The type of the primary key for a Document. - The type of the grouping criteria. - The type of the projected group. - A LINQ expression filter. - The grouping criteria. - The projected group result. - The partition key of your document, if any. - - - - Asynchronously returns a paginated list of the documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - The property selector. - Order of the sorting. - The number of documents you want to skip. Default value is 0. - The number of documents you want to take. Default value is 50. - An optional partition key. - - - - Asynchronously returns a paginated list of the documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - The sort definition. - The number of documents you want to skip. Default value is 0. - The number of documents you want to take. Default value is 50. - An optional partition key. - - - - Asynchronously returns a projected document matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - The type representing the model you want to project to. - A LINQ expression filter. - The projection expression. - An optional partition key. - - - - Returns a projected document matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - The type representing the model you want to project to. - A LINQ expression filter. - The projection expression. - An optional partition key. - - - - Asynchronously returns a list of projected documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - The type representing the model you want to project to. - A LINQ expression filter. - The projection expression. - An optional partition key. - - - - Asynchronously returns a list of projected documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - The type representing the model you want to project to. - The document filter. - The projection expression. - An optional partition key. - - - - The IBaseReadOnlyRepository exposes the generic Read Only functionality of the BaseMongoRepository. - - - - - The connection string. - - - - - The database name. - - - - - Asynchronously returns one document given its id. - - The type representing a Document. - The type of the primary key for a Document. - The Id of the document you want to get. - An optional partition key. - - - - Returns one document given its id. - - The type representing a Document. - The type of the primary key for a Document. - The Id of the document you want to get. - An optional partition key. - - - - Asynchronously returns one document given an expression filter. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns one document given an expression filter. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns a collection cursor. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns true if any of the document of the collection matches the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns true if any of the document of the collection matches the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Asynchronously returns a list of the documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns a list of the documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Asynchronously counts how many documents match the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partitionKey - - - - Counts how many documents match the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partitionKey - - - - Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - The type of the primary key. - A LINQ expression filter. - A property selector to order by descending. - An optional partitionKey. - - - - Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - The type of the primary key. - A LINQ expression filter. - A property selector to order by descending. - An optional partitionKey. - - - - Gets the document with the minimum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - The type of the primary key. - A LINQ expression filter. - A property selector to order by ascending. - An optional partitionKey. - - - - Gets the document with the minimum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - The type of the primary key. - A LINQ expression filter. - A property selector to order by ascending. - An optional partitionKey. - - - - Gets the maximum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the primary key. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by ascending. - An optional partitionKey. - - - - Gets the maximum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the primary key. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by ascending. - An optional partitionKey. - - - - Gets the minimum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the primary key. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by ascending. - An optional partition key. - - - - Gets the minimum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the primary key. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by ascending. - An optional partition key. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - The type of the primary key. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - The type of the primary key. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - The type of the primary key. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - The type of the primary key. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - Asynchronously returns a projected document matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - The type representing the model you want to project to. - - The projection expression. - An optional partition key. - - - - Returns a projected document matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - The type representing the model you want to project to. - - The projection expression. - An optional partition key. - - - - Asynchronously returns a list of projected documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - The type representing the model you want to project to. - - The projection expression. - An optional partition key. - - - - Asynchronously returns a list of projected documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - The type representing the model you want to project to. - - The projection expression. - An optional partition key. - - - - 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. - - The type representing a Document. - The type of the grouping criteria. - The type of the projected group. - The type of the primary key. - The grouping criteria. - The projected group result. - The partition key of your document, if any. - - - - 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. - - The type representing a Document. - The type of the grouping criteria. - The type of the projected group. - The type of the primary key. - A LINQ expression filter. - The grouping criteria. - The projected group result. - The partition key of your document, if any. - - - - Asynchronously returns a paginated list of the documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - The property selector. - Order of the sorting. - The number of documents you want to skip. Default value is 0. - The number of documents you want to take. Default value is 50. - An optional partition key. - - - - Asynchronously returns a paginated list of the documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - The sort definition. - The number of documents you want to skip. Default value is 0. - The number of documents you want to take. Default value is 50. - An optional partition key. - - - - This is the interface of the IMongoDbContext which is managed by the . - - - - - The IMongoClient from the official MongoDb driver - - - - - The IMongoDatabase from the official Mongodb driver - - - - - Returns a collection for a document type that has a partition key. - - - The value of the partition key. - - - - Drops a collection having a partitionkey, use very carefully. - - - - - - Sets the Guid representation of the MongoDb Driver. - - The new value of the GuidRepresentation - - - - The IReadOnlyMongoRepository exposes the readonly functionality of the BaseMongoRepository. - - - - - Asynchronously returns one document given its id. - - The type representing a Document. - The Id of the document you want to get. - An optional partition key. - - - - Returns one document given its id. - - The type representing a Document. - The Id of the document you want to get. - An optional partition key. - - - - Asynchronously returns one document given an expression filter. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns one document given an expression filter. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns a collection cursor. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - - - - Asynchronously returns true if any of the document of the collection matches the filter condition. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns true if any of the document of the collection matches the filter condition. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - - - - Asynchronously returns a list of the documents matching the filter condition. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns a list of the documents matching the filter condition. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - - - - Asynchronously counts how many documents match the filter condition. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - - - - Counts how many documents match the filter condition. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - - - - Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - A LINQ expression filter. - A property selector to order by descending. - An optional partitionKey. - - - - Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - A LINQ expression filter. - A property selector to order by descending. - An optional partitionKey. - - - - - Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - A LINQ expression filter. - A property selector to order by ascending. - An optional partitionKey. - - - - Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - A LINQ expression filter. - A property selector to order by ascending. - An optional partitionKey. - - - - Gets the maximum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by ascending. - An optional partitionKey. - - - - Gets the maximum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by ascending. - An optional partitionKey. - - - - Gets the minimum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by ascending. - An optional partition key. - - - - Gets the minimum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by ascending. - An optional partition key. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - Asynchronously returns a projected document matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - The type representing the model you want to project to. - A LINQ expression filter. - The projection expression. - An optional partition key. - - - - Returns a projected document matching the filter condition. - - The type representing a Document. - The type representing the model you want to project to. - A LINQ expression filter. - The projection expression. - An optional partition key. - - - - Asynchronously returns a list of projected documents matching the filter condition. - - The type representing a Document. - The type representing the model you want to project to. - A LINQ expression filter. - The projection expression. - An optional partition key. - - - - Asynchronously returns a list of projected documents matching the filter condition. - - The type representing a Document. - The type representing the model you want to project to. - A LINQ expression filter. - The projection expression. - An optional partition key. - - - - 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. - - The type representing a Document. - The type of the grouping criteria. - The type of the projected group. - The grouping criteria. - The projected group result. - The partition key of your document, if any. - - - - 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. - - The type representing a Document. - The type of the grouping criteria. - The type of the projected group. - A LINQ expression filter. - The grouping criteria. - The projected group result. - The partition key of your document, if any. - - - - Asynchronously returns a paginated list of the documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - The property selector. - Order of the sorting. - The number of documents you want to skip. Default value is 0. - The number of documents you want to take. Default value is 50. - An optional partition key. - - - - Asynchronously returns a paginated list of the documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - The sort definition. - The number of documents you want to skip. Default value is 0. - The number of documents you want to take. Default value is 50. - An optional partition key. - - - - 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. - - - - - The name of the collection in which your documents are stored. - - - - - The constructor. - - The name of the collection. - - - - Asynchronously adds a document to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The type of the primary key for a Document. - The document you want to add. - - - - Adds a document to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The type of the primary key for a Document. - The document you want to add. - - - - Asynchronously adds a list of documents to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The type of the primary key for a Document. - The documents you want to add. - - - - Adds a list of documents to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The type of the primary key for a Document. - The documents you want to add. - - - - 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. - - - 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. - - - 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. - - - 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. - - - - - Asynchronously adds a document to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The type of the primary key for a Document. - The document you want to add. - - - - Asynchronously adds a document to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The document you want to add. - - - - Adds a document to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The type of the primary key for a Document. - The document you want to add. - - - - Adds a document to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The document you want to add. - - - - Asynchronously adds a list of documents to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The type of the primary key for a Document. - The documents you want to add. - - - - Asynchronously adds a list of documents to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The documents you want to add. - - - - Adds a list of documents to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The type of the primary key for a Document. - The documents you want to add. - - - - Adds a list of documents to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The documents you want to add. - - - - Asynchronously deletes a document. - - The type representing a Document. - The document you want to delete. - The number of documents deleted. - - - - Deletes a document. - - The type representing a Document. - The document you want to delete. - The number of documents deleted. - - - - Deletes a document matching the condition of the LINQ expression filter. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Asynchronously deletes a document matching the condition of the LINQ expression filter. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Asynchronously deletes the documents matching the condition of the LINQ expression filter. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Asynchronously deletes a list of documents. - - The type representing a Document. - The list of documents to delete. - The number of documents deleted. - - - - Deletes a list of documents. - - The type representing a Document. - The list of documents to delete. - The number of documents deleted. - - - - Deletes the documents matching the condition of the LINQ expression filter. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Deletes a document. - - The type representing a Document. - The type of the primary key for a Document. - The document you want to delete. - The number of documents deleted. - - - - Asynchronously deletes a document matching the condition of the LINQ expression filter. - - The type representing a Document. - The type of the primary key for a Document. - The document you want to delete. - The number of documents deleted. - - - - Deletes a document matching the condition of the LINQ expression filter. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Asynchronously deletes a document matching the condition of the LINQ expression filter. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Asynchronously deletes the documents matching the condition of the LINQ expression filter. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Asynchronously deletes a list of documents. - - The type representing a Document. - The type of the primary key for a Document. - The list of documents to delete. - The number of documents deleted. - - - - Deletes a list of documents. - - The type representing a Document. - The type of the primary key for a Document. - The list of documents to delete. - The number of documents deleted. - - - - Deletes the documents matching the condition of the LINQ expression filter. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Returns the names of the indexes present on a collection. - - The type representing a Document. - The type of the primary key for a Document. - An optional partition key - A list containing the names of the indexes on on the concerned collection. - - - - Returns the names of the indexes present on a collection. - - The type representing a Document. - An optional partition key - A list containing the names of the indexes on on the concerned collection. - - - - Create a text index on the given field. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Create a text index on the given field. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The type of the primary key for a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Creates an index on the given field in ascending order. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Creates an index on the given field in ascending order. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The type of the primary key for a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Creates an index on the given field in descending order. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - - - - Creates a hashed index on the given field. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - - - - Creates a combined text index. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The fields we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - - - - Drops the index given a field name - - The type representing a Document. - The name of the index - An optional partition key - - - - - - - The constructor taking a connection string and a database name. - - The connection string of the MongoDb server. - The name of the database against which you want to perform operations. - - - - The contructor taking a . - - A mongodb context implementing - - - - The contructor taking a . - - A mongodb context implementing - - - - Asynchronously returns a paginated list of the documents matching the filter condition. - - The type representing a Document. - A LINQ expression filter. - The number of documents you want to skip. Default value is 0. - The number of documents you want to take. Default value is 50. - An optional partition key. - - - - Asynchronously returns a paginated list of the documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - The number of documents you want to skip. Default value is 0. - The number of documents you want to take. Default value is 50. - An optional partition key. - - - - GetAndUpdateOne with filter - - The type representing a Document. - A LINQ expression filter. - - - - - - - GetAndUpdateOne with filter - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - - - - - - - Sets the value of the document Id if it is not set already. - - The document type. - The type of the primary key. - The document. - - - - Sets the value of the document Id if it is not set already. - - The document type. - The document. - - - - Gets a collections for a potentially partitioned document type. - - The document type. - The collection partition key. - - - - - Gets a collections for the type TDocument with a partition key. - - The document type. - The collection partition key. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The client session. - The document with the modifications you want to persist. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The client session. - The document with the modifications you want to persist. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The client session. - The document to modify. - The update definition. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The client session. - The document to modify. - The update definition. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field to update. - The client session. - The document to modify. - The field to update. - The value of the field. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field to update. - The client session. - The document to modify. - The field to update. - The value of the field. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field to update. - The client session. - The filter for the update. - The field to update. - The value of the field. - The optional partition key. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field to update. - The client session. - The filter for the update. - The field to update. - The value of the field. - The optional partition key. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field to update. - The client session. - The filter for the update. - The field to update. - The value of the field. - The optional partition key. - The optional cancellation token. - - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field to update. - The client session. - The filter for the update. - The field to update. - The value of the field. - The optional partition key. - The optional cancellation token. - - - - - Asynchronously Updates a document. - - The type representing a Document. - The document with the modifications you want to persist. - - - - Updates a document. - - The type representing a Document. - The document with the modifications you want to persist. - - - - Takes a document you want to modify and applies the update you have defined in MongoDb. - - The type representing a Document. - The document you want to modify. - The update definition for the document. - - - - Takes a document you want to modify and applies the update you have defined in MongoDb. - - The type representing a Document. - The document you want to modify. - The update definition for the document. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the field. - The document you want to modify. - The field selector. - The new value of the property field. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the field. - The document you want to modify. - The field selector. - The new value of the property field. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entity selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entity selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The type of the primary key for a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - Asynchronously Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The document with the modifications you want to persist. - - - - Updates a document. - - The type representing a Document. - The type of the primary key for a Document. - The document with the modifications you want to persist. - - - - Takes a document you want to modify and applies the update you have defined in MongoDb. - - The type representing a Document. - The type of the primary key for a Document. - The document you want to modify. - The update definition for the document. - - - - Takes a document you want to modify and applies the update you have defined in MongoDb. - - The type representing a Document. - The type of the primary key for a Document. - The document you want to modify. - The update definition for the document. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document you want to modify. - The field selector. - The new value of the property field. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document you want to modify. - The field selector. - The new value of the property field. - - - - Updates the property field with the given value. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entity selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entity selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The type of the primary key for a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The type of the primary key for a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the primary key for a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The type of the primary key for a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The type of the primary key for a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - Deletes a document. - - The type representing a Document. - The type of the primary key for a Document. - The document you want to delete. - The number of documents deleted. - - - - Asynchronously deletes a document matching the condition of the LINQ expression filter. - - The type representing a Document. - The type of the primary key for a Document. - The document you want to delete. - The number of documents deleted. - - - - Deletes a document matching the condition of the LINQ expression filter. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Asynchronously deletes a document matching the condition of the LINQ expression filter. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Asynchronously deletes the documents matching the condition of the LINQ expression filter. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Asynchronously deletes a list of documents. - - The type representing a Document. - The type of the primary key for a Document. - The list of documents to delete. - The number of documents deleted. - - - - Deletes a list of documents. - - The type representing a Document. - The type of the primary key for a Document. - The list of documents to delete. - The number of documents deleted. - - - - Deletes the documents matching the condition of the LINQ expression filter. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Returns the names of the indexes present on a collection. - - The type representing a Document. - The type of the primary key for a Document. - An optional partition key - A list containing the names of the indexes on on the concerned collection. - - - - Create a text index on the given field. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The type of the primary key for a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Creates an index on the given field in ascending order. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The type of the primary key for a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Creates an index on the given field in descending order. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The type of the primary key for a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Creates a hashed index on the given field. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The type of the primary key for a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Creates a combined text index. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The type of the primary key for a Document. - The fields we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Drops the index given a field name - - The type representing a Document. - The type of the primary key for a Document. - The name of the index - An optional partition key - - - - The interface exposing data insertion functionality for Key typed repositories. - - - - - - Asynchronously adds a document to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The document you want to add. - - - - Adds a document to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The document you want to add. - - - - Asynchronously adds a list of documents to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The documents you want to add. - - - - Adds a list of documents to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The documents you want to add. - - - - 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. - - - 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. - - - 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. - - The type of the document Id. - - - - The MongoDb accessor to insert data. - - - - - Asynchronously adds a document to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The document you want to add. - - - - Adds a document to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The document you want to add. - - - - Asynchronously adds a list of documents to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The documents you want to add. - - - - Adds a list of documents to the collection. - Populates the Id and AddedAtUtc fields if necessary. - - The type representing a Document. - The documents you want to add. - - - - The MongoDb accessor to delete data. - - - - - Deletes a document. - - The type representing a Document. - The document you want to delete. - The number of documents deleted. - - - - Asynchronously deletes a document matching the condition of the LINQ expression filter. - - The type representing a Document. - The document you want to delete. - The number of documents deleted. - - - - Deletes a document matching the condition of the LINQ expression filter. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Asynchronously deletes a document matching the condition of the LINQ expression filter. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Asynchronously deletes the documents matching the condition of the LINQ expression filter. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Asynchronously deletes a list of documents. - - The type representing a Document. - The list of documents to delete. - The number of documents deleted. - - - - Deletes a list of documents. - - The type representing a Document. - The list of documents to delete. - The number of documents deleted. - - - - Deletes the documents matching the condition of the LINQ expression filter. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - The MongoDb accessor to manage indexes. - - - - - Returns the names of the indexes present on a collection. - - The type representing a Document. - An optional partition key - A list containing the names of the indexes on on the concerned collection. - - - - Create a text index on the given field. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Creates an index on the given field in ascending order. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Creates an index on the given field in descending order. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Creates a hashed index on the given field. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Creates a combined text index. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The fields we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Drops the index given a field name - - The type representing a Document. - The name of the index - An optional partition key - - - - The constructor taking a connection string and a database name. - - The connection string of the MongoDb server. - The name of the database against which you want to perform operations. - - - - The contructor taking a . - - A mongodb context implementing - - - - The contructor taking a . - - A mongodb context implementing - - - - Gets a collections for a potentially partitioned document type. - - The document type. - The collection partition key. - - - - - Gets a collections for the type TDocument with a partition key. - - The document type. - The collection partition key. - - - - - Asynchronously Updates a document. - - The type representing a Document. - The document with the modifications you want to persist. - - - - Updates a document. - - The type representing a Document. - The document with the modifications you want to persist. - - - - Takes a document you want to modify and applies the update you have defined in MongoDb. - - The type representing a Document. - The document you want to modify. - The update definition for the document. - - - - Takes a document you want to modify and applies the update you have defined in MongoDb. - - The type representing a Document. - The document you want to modify. - The update definition for the document. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the field. - The document you want to modify. - The field selector. - The new value of the property field. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the field. - The document you want to modify. - The field selector. - The new value of the property field. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entity selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entity selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - The interface exposing deletion functionality for Key typed repositories. - - The type of the document Id. - - - - Deletes a document. - - The type representing a Document. - The document you want to delete. - The number of documents deleted. - - - - Asynchronously deletes a document matching the condition of the LINQ expression filter. - - The type representing a Document. - The document you want to delete. - The number of documents deleted. - - - - Deletes a document matching the condition of the LINQ expression filter. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Asynchronously deletes a document matching the condition of the LINQ expression filter. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Asynchronously deletes the documents matching the condition of the LINQ expression filter. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - Asynchronously deletes a list of documents. - - The type representing a Document. - The list of documents to delete. - The number of documents deleted. - - - - Deletes a list of documents. - - The type representing a Document. - The list of documents to delete. - The number of documents deleted. - - - - Deletes the documents matching the condition of the LINQ expression filter. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - The number of documents deleted. - - - - The interface exposing index management functionality for Key typed repositories. - - - - - - Returns the names of the indexes present on a collection. - - The type representing a Document. - An optional partition key - A list containing the names of the indexes on on the concerned collection. - - - - Create a text index on the given field. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Creates an index on the given field in ascending order. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Creates an index on the given field in descending order. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Creates a hashed index on the given field. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The field we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Creates a combined text index. - IndexCreationOptions can be supplied to further specify - how the creation should be done. - - The type representing a Document. - The fields we want to index. - Options for creating an index. - An optional partition key. - The result of the create index operation. - - - - Drops the index given a field name - - The type representing a Document. - The name of the index - An optional partition key - - - - The interface exposing all the CRUD and Index functionalities for Key typed repositories. - - The type of the document Id. - - - - 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. - - - - - The connection string. - - - - - The database name. - - - - - The MongoDbContext - - - - - A MongoDb Reader for read operations - - - - - The constructor taking a connection string and a database name. - - The connection string of the MongoDb server. - The name of the database against which you want to perform operations. - - - - The contructor taking a . - - A mongodb context implementing - - - - The contructor taking a . - - A mongodb context implementing - - - - Asynchronously returns one document given its id. - - The type representing a Document. - The Id of the document you want to get. - An optional partition key. - - - - Returns one document given its id. - - The type representing a Document. - The Id of the document you want to get. - An optional partition key. - - - - Asynchronously returns one document given an expression filter. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns one document given an expression filter. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns a collection cursor. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns true if any of the document of the collection matches the filter condition. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns true if any of the document of the collection matches the filter condition. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - - - - Asynchronously returns a list of the documents matching the filter condition. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns a list of the documents matching the filter condition. - - The type representing a Document. - A LINQ expression filter. - An optional partition key. - - - - Asynchronously counts how many documents match the filter condition. - - The type representing a Document. - A LINQ expression filter. - An optional partitionKey - - - - Counts how many documents match the filter condition. - - The type representing a Document. - A LINQ expression filter. - An optional partitionKey - - - - Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - A LINQ expression filter. - A property selector to order by descending. - An optional partitionKey. - - - - Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - A LINQ expression filter. - A property selector to order by descending. - An optional partitionKey. - - - - - Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - A LINQ expression filter. - A property selector to order by ascending. - An optional partitionKey. - - - - Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - A LINQ expression filter. - A property selector to order by ascending. - An optional partitionKey. - - - - Gets the maximum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by ascending. - An optional partitionKey. - - - - Gets the maximum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by ascending. - An optional partitionKey. - - - - Gets the minimum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by ascending. - An optional partition key. - - - - Gets the minimum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by ascending. - An optional partition key. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - Asynchronously returns a projected document matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - The type representing the model you want to project to. - A LINQ expression filter. - The projection expression. - An optional partition key. - - - - Returns a projected document matching the filter condition. - - The type representing a Document. - The type representing the model you want to project to. - A LINQ expression filter. - The projection expression. - An optional partition key. - - - - Asynchronously returns a list of projected documents matching the filter condition. - - The type representing a Document. - The type representing the model you want to project to. - A LINQ expression filter. - The projection expression. - An optional partition key. - - - - Asynchronously returns a list of projected documents matching the filter condition. - - The type representing a Document. - The type representing the model you want to project to. - A LINQ expression filter. - The projection expression. - An optional partition key. - - - - 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. - - The type representing a Document. - The type of the grouping criteria. - The type of the projected group. - The grouping criteria. - The projected group result. - The partition key of your document, if any. - - - - 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. - - The type representing a Document. - The type of the grouping criteria. - The type of the projected group. - A LINQ expression filter. - The grouping criteria. - The projected group result. - The partition key of your document, if any. - - - - Asynchronously returns a paginated list of the documents matching the filter condition. - - The type representing a Document. - A LINQ expression filter. - The property selector. - Order of the sorting. - The number of documents you want to skip. Default value is 0. - The number of documents you want to take. Default value is 50. - An optional partition key. - - - - Asynchronously returns a paginated list of the documents matching the filter condition. - - The type representing a Document. - A LINQ expression filter. - The sort definition. - The number of documents you want to skip. Default value is 0. - The number of documents you want to take. Default value is 50. - An optional partition key. - - - - Asynchronously Updates a document. - - The type representing a Document. - The document with the modifications you want to persist. - - - - Updates a document. - - The type representing a Document. - The document with the modifications you want to persist. - - - - Takes a document you want to modify and applies the update you have defined in MongoDb. - - The type representing a Document. - The document you want to modify. - The update definition for the document. - - - - Takes a document you want to modify and applies the update you have defined in MongoDb. - - The type representing a Document. - The document you want to modify. - The update definition for the document. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the field. - The document you want to modify. - The field selector. - The new value of the property field. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the field. - The document you want to modify. - The field selector. - The new value of the property field. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entity selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - Updates the property field with the given value update a property field in entities. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entity selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The partition key for the document. - - - - For the entities selected by the filter, updates the property field with the given value. - - The type representing a Document. - The type of the field. - The document filter. - The field selector. - The new value of the property field. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - For the entities selected by the filter, applies the update you have defined in MongoDb. - - The type representing a Document. - The document filter. - The update definition to apply. - The value of the partition key. - - - - 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. - - - - - The document constructor - - - - - The Id of the document - - - - - The datetime in UTC at which the document was added. - - - - - The version of the schema of the document - - - - - 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. - - - - - 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. - - - - - A version number, to indicate the version of the schema. - - - - - 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. - - - - - Options for creating an index. - - - - - Gets or sets a value indicating whether the index is a unique index. - - - - - Gets or sets the index version for text indexes. - - - - - Gets or sets the index version for 2dsphere indexes. - - - - - Gets or sets a value indicating whether the index is a sparse index. - - - - - Gets or sets the index name. - - - - - Gets or sets the min value for 2d indexes. - - - - - Gets or sets the max value for 2d indexes. - - - - - Gets or sets the language override. - - - - - Gets or sets when documents expire (used with TTL indexes). - - - - - Gets or sets the default language. - - - - - Gets or sets the size of a geohash bucket. - - - - - Gets or sets the precision, in bits, used with geohash indexes. - - - - - Gets or sets a value indicating whether to create the index in the background. - - - - - Gets or sets the version of the index. - - - - - 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. - - - - - The partition key used to partition your collection. - - - - - 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. - - - - - The constructor, it needs a partition key. - - - - - - 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. - - - - - The MongoDb context - - - - - The IMongoClient from the official MongoDB driver - - - - - The IMongoDatabase from the official MongoDB driver - - - - - The constructor of the MongoDbContext, it needs an object implementing . - - An object implementing IMongoDatabase - - - - The constructor of the MongoDbContext, it needs a connection string and a database name. - - The connections string. - The name of your database. - - - - Initialise an instance of a using a connection string - - - - - - The constructor of the MongoDbContext, it needs a connection string and a database name. - - The MongoClient. - The name of your database. - - - - Returns a collection for a document type. Also handles document types with a partition key. - - The type representing a Document. - The optional value of the partition key. - - - - Drops a collection, use very carefully. - - The type representing a Document. - - - - Sets the Guid representation of the MongoDB Driver. - - The new value of the GuidRepresentation - - - - Extracts the CollectionName attribute from the entity type, if any. - - The type representing a Document. - The name of the collection in which the TDocument is stored. - - - - Initialize the Guid representation of the MongoDB Driver. - Override this method to change the default GuidRepresentation. - - - - - Given the document type and the partition key, returns the name of the collection it belongs to. - - The type representing a Document. - The value of the partition key. - The name of the collection. - - - - Very naively pluralizes a TDocument type name. - - The type representing a Document. - The pluralized document name. - - - - 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. - - - - - The constructor taking a connection string and a database name. - - The connection string of the MongoDb server. - The name of the database against which you want to perform operations. - - - - The contructor taking a . - - A mongodb context implementing - - - - The contructor taking a . - - A mongodb context implementing - - - - Asynchronously returns one document given its id. - - The type representing a Document. - The type of the primary key for a Document. - The Id of the document you want to get. - An optional partition key. - - - - Returns one document given its id. - - The type representing a Document. - The type of the primary key for a Document. - The Id of the document you want to get. - An optional partition key. - - - - Asynchronously returns one document given an expression filter. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns one document given an expression filter. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns a collection cursor. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns true if any of the document of the collection matches the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns true if any of the document of the collection matches the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Asynchronously returns a list of the documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Returns a list of the documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partition key. - - - - Asynchronously counts how many documents match the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partitionKey - - - - Counts how many documents match the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - An optional partitionKey - - - - Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - The type of the primary key. - A LINQ expression filter. - A property selector to order by descending. - An optional partitionKey. - - - - Gets the document with the maximum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - The type of the primary key. - A LINQ expression filter. - A property selector to order by descending. - An optional partitionKey. - - - - Gets the document with the minimum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - The type of the primary key. - A LINQ expression filter. - A property selector to order by ascending. - An optional partitionKey. - - - - Gets the document with the minimum value of a specified property in a MongoDB collections that is satisfying the filter. - - The document type. - The type of the primary key. - A LINQ expression filter. - A property selector to order by ascending. - An optional partitionKey. - - - - Gets the maximum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the primary key. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to select the max value. - An optional partitionKey. - - - - Gets the maximum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the primary key. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by ascending. - An optional partitionKey. - - - - Gets the minimum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the primary key. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by ascending. - An optional partition key. - - - - Gets the minimum value of a property in a mongodb collections that is satisfying the filter. - - The document type. - The type of the primary key. - The type of the value used to order the query. - A LINQ expression filter. - A property selector to order by ascending. - An optional partition key. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - The type of the primary key. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - The type of the primary key. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - The type of the primary key. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - Sums the values of a selected field for a given filtered collection of documents. - - The type representing a Document. - The type of the primary key. - A LINQ expression filter. - The field you want to sum. - The partition key of your document, if any. - - - - Asynchronously returns a projected document matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - The type representing the model you want to project to. - A LINQ expression filter. - The projection expression. - An optional partition key. - - - - Returns a projected document matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - The type representing the model you want to project to. - A LINQ expression filter. - The projection expression. - An optional partition key. - - - - Asynchronously returns a list of projected documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - The type representing the model you want to project to. - A LINQ expression filter. - The projection expression. - An optional partition key. - - - - Asynchronously returns a list of projected documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - The type representing the model you want to project to. - The document filter. - The projection expression. - An optional partition key. - - - - 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. - - The type representing a Document. - The type of the primary key for a Document. - The type of the grouping criteria. - The type of the projected group. - The grouping criteria. - The projected group result. - The partition key of your document, if any. - - - - 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. - - The type representing a Document. - The type of the primary key for a Document. - The type of the grouping criteria. - The type of the projected group. - A LINQ expression filter. - The grouping criteria. - The projected group result. - The partition key of your document, if any. - - - - Asynchronously returns a paginated list of the documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - The property selector. - Order of the sorting. - The number of documents you want to skip. Default value is 0. - The number of documents you want to take. Default value is 50. - An optional partition key. - - - - Asynchronously returns a paginated list of the documents matching the filter condition. - - The type representing a Document. - The type of the primary key for a Document. - A LINQ expression filter. - The sort definition. - The number of documents you want to skip. Default value is 0. - The number of documents you want to take. Default value is 50. - An optional partition key. - - - - Gets a collections for a potentially partitioned document type. - - The document type. - The type of the primary key. - The document. - - - - - Gets a collections for a potentially partitioned document type. - - The document type. - The type of the primary key. - The collection partition key. - - - - - Gets a collections for a potentially partitioned document type. - - The document type. - The document. - - - - - Gets a collections for the type TDocument with a partition key. - - The document type. - The type of the primary key. - The collection partition key. - - - - - The IdGenerator instance, used to generate Ids of different types. - - - - - Generates a random value of a given type. - - The type of the value to generate. - A value of type TKey. - - - - Container for registered Vocabularies. At present, only a single vocabulary is supported: Default. - - - - - 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. - - - - - 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. - - - - - Adds a word to the vocabulary which cannot easily be pluralized/singularized by RegEx, e.g. "person" and "people". - - The singular form of the irregular word, e.g. "person". - The plural form of the irregular word, e.g. "people". - True to match these words on their own as well as at the end of longer words. False, otherwise. - - - - Adds an uncountable word to the vocabulary, e.g. "fish". Will be ignored when plurality is changed. - - Word to be added to the list of uncountables. - - - - Adds a rule to the vocabulary that does not follow trivial rules for pluralization, e.g. "bus" -> "buses" - - RegEx to be matched, case insensitive, e.g. "(bus)es$" - RegEx replacement e.g. "$1" - - - - Adds a rule to the vocabulary that does not follow trivial rules for singularization, e.g. "vertices/indices -> "vertex/index" - - RegEx to be matched, case insensitive, e.g. ""(vert|ind)ices$"" - RegEx replacement e.g. "$1ex" - - - - Pluralizes the provided input considering irregular words - - Word to be pluralized - Normally you call Pluralize on singular words; but if you're unsure call it with false - - - - - Singularizes the provided input considering irregular words - - Word to be singularized - Normally you call Singularize on plural words; but if you're unsure call it with false - - - - - Inflector extensions - - - - - Pluralizes the provided input considering irregular words - - Word to be pluralized - Normally you call Pluralize on singular words; but if you're unsure call it with false - - - - - Singularizes the provided input considering irregular words - - Word to be singularized - Normally you call Singularize on plural words; but if you're unsure call it with false - - - - - By default, pascalize converts strings to UpperCamelCase also removing underscores - - - - - - - Same as Pascalize except that the first character is lower case - - - - - - - Separates the input words with underscore - - The string to be underscored - - - - - Replaces underscores with dashes in the string - - - - - - - Replaces underscores with hyphens in the string - - - - - - - Extensions for the random number generator - - - - - Returns a random long from min (inclusive) to max (exclusive) - - The given random instance - The inclusive minimum bound - The exclusive maximum bound. Must be greater than min - - - - Returns a random long from 0 (inclusive) to max (exclusive) - - The given random instance - The exclusive maximum bound. Must be greater than 0 - - - - Returns a random long over all possible values of long (except long.MaxValue, similar to - random.Next()) - - The given random instance - - - diff --git a/MongoDbGenericRepository/lib/netstandard1.5/MongoDbGenericRepository.dll b/MongoDbGenericRepository/lib/netstandard1.5/MongoDbGenericRepository.dll deleted file mode 100644 index 4ac6414ced5c280f8061625603a2dc7fb8a8b65d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 183296 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

8=a`v0UfepSA{F~Y#i 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 diff --git a/MongoDbGenericRepository/lib/netstandard2.0/MongoDbGenericRepository.dll b/MongoDbGenericRepository/lib/netstandard2.0/MongoDbGenericRepository.dll deleted file mode 100644 index 8a53c538ec84002d902de0cb86251e9746ca2a11..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 183296 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%0A%`zYc^ym?UlIG;-+C(F8V&V=ZV4++(eAlVyB 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%0D`ps;!Hh%hd?Qe}eEpJ~x z)*kiy_k{6%j_*(Rw#25*NjUPG2d4h4yVAxO&AIFVziTJC7_|KnCY;^+Hf+_iT6Ru=#Hn_I-G zwv-=hIR_k6nFr#jW$r~j|@r+d%4PdU}HeE;-Qt*h@}lRwt_`QO(u z#^nFM&r$iV={KKqb-z~qN6%4z8TTBj8263;WB;=T{+(-J63#`9b57$NayQN`|8;#h ziZjXoO?{(6cWcz_K0SVp@zL)5|E5>p%vDW&>8vo7S^_l(wPb1*YCWh8rItp`MJ

g{>q{+_8vP10)iYDB*|dS^G*b#OR?~E9=TJM3 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