gitextract_61u1jiz3/ ├── .gitignore ├── CoreIntegrationTests/ │ ├── App.config │ ├── CRUDObjectIdTests.cs │ ├── CRUDPartitionedCollectionNameAttributeTests.cs │ ├── CRUDPartitionedTests.cs │ ├── CRUDTKeyPartitionedCollectionNameAttributeTests.cs │ ├── CRUDTKeyPartitionedTests.cs │ ├── CRUDTKeyTests.cs │ ├── CRUDTests.cs │ ├── CoreIntegrationTests.csproj │ ├── IdentityUserTests.cs │ └── Infrastructure/ │ ├── BaseMongoDbRepositoryTests.cs │ ├── GlobalVariables.cs │ ├── ITestRepository.cs │ ├── MongoDbConfig.cs │ ├── MongoDbDocumentTestBase.Main.cs │ ├── MongoDbDocumentTestBase.Update.cs │ ├── MongoDbTKeyDocumentTestBase.Main.cs │ ├── MongoDbTKeyDocumentTestBase.Update.cs │ ├── MongoDbTestFixture.cs │ ├── RandomExtensions.cs │ ├── TestClasses.cs │ └── TestRepository.cs ├── CoreUnitTests/ │ ├── .editorconfig │ ├── BaseMongoRepositoryTests/ │ │ ├── AddTests/ │ │ │ ├── AddManyAsyncTests.cs │ │ │ ├── AddManyTests.cs │ │ │ ├── AddOneAsyncTests.cs │ │ │ └── AddOneTests.cs │ │ ├── DeleteTests/ │ │ │ ├── DeleteManyAsyncTests.cs │ │ │ ├── DeleteManyTests.cs │ │ │ ├── DeleteOneAsyncTests.cs │ │ │ └── DeleteOneTests.cs │ │ ├── IndexTests/ │ │ │ ├── BaseIndexTests.cs │ │ │ ├── CreateAscendingIndexAsyncTests.cs │ │ │ ├── CreateCombinedTextIndexAsyncTests.cs │ │ │ ├── CreateDescendingIndexAsyncTests.cs │ │ │ ├── CreateHashedIndexAsyncTests.cs │ │ │ ├── CreateTextIndexAsyncTests.cs │ │ │ ├── DropIndexAsyncTests.cs │ │ │ └── GetIndexNamesAsyncTests.cs │ │ └── UpdateTests/ │ │ ├── UpdateManyAsyncTests.cs │ │ ├── UpdateManyTests.cs │ │ ├── UpdateOneAsyncTests.cs │ │ └── UpdateOneTests.cs │ ├── CoreUnitTests.csproj │ ├── DataAccessTests/ │ │ ├── MongoDbCreatorTests/ │ │ │ ├── AddManyAsyncTests.cs │ │ │ ├── AddManyTests.cs │ │ │ ├── AddOneAsyncTests.cs │ │ │ └── AddOneTests.cs │ │ ├── MongoDbEraserTests/ │ │ │ ├── DeleteManyAsyncTests.cs │ │ │ ├── DeleteManyTests.cs │ │ │ ├── DeleteOneAsyncTests.cs │ │ │ └── DeleteOneTests.cs │ │ ├── MongoDbIndexHandlerTests/ │ │ │ ├── BaseIndexTests.cs │ │ │ ├── CreateAscendingIndexAsyncTests.cs │ │ │ ├── CreateCombinedTextIndexAsyncTests.cs │ │ │ ├── CreateDescendingIndexAsyncTests.cs │ │ │ ├── CreateHashedIndexAsyncTests.cs │ │ │ ├── CreateTextIndexAsyncTests.cs │ │ │ ├── DropIndexAsyncTests.cs │ │ │ └── GetIndexNamesAsyncTests.cs │ │ ├── MongoDbReaderTests/ │ │ │ ├── AnyAsyncTests.cs │ │ │ ├── AnyTests.cs │ │ │ ├── BaseReaderTests.cs │ │ │ ├── CountAsyncTests.cs │ │ │ ├── CountTests.cs │ │ │ ├── GetAllAsyncTests.cs │ │ │ ├── GetAllTests.cs │ │ │ ├── GetByIdAsyncTests.cs │ │ │ ├── GetByIdTests.cs │ │ │ ├── GetByMaxAsyncTests.cs │ │ │ ├── GetByMaxTests.cs │ │ │ ├── GetByMinAsyncTests.cs │ │ │ ├── GetByMinTests.cs │ │ │ ├── GetMaxValueAsyncTests .cs │ │ │ ├── GetMaxValueTests .cs │ │ │ ├── GetMinValueAsyncTests .cs │ │ │ ├── GetMinValueTests .cs │ │ │ ├── GetOneAsyncTests.cs │ │ │ ├── GetOneTests.cs │ │ │ ├── ProjectManyAsyncTests.cs │ │ │ ├── ProjectManyTests.cs │ │ │ ├── ProjectOneAsyncTests.cs │ │ │ └── ProjectOneTests.cs │ │ └── MongoDbUpdaterTests/ │ │ ├── UpdateManyAsyncTests.cs │ │ ├── UpdateManyTests.cs │ │ ├── UpdateOneAsyncTests.cs │ │ └── UpdateOneTests.cs │ ├── Infrastructure/ │ │ ├── FilterDefinitionExtensions.cs │ │ ├── GenericTestContext.cs │ │ ├── IndexExtensions.cs │ │ ├── Model/ │ │ │ ├── Child.cs │ │ │ ├── Nested.cs │ │ │ ├── PartitionedTestDocument.cs │ │ │ ├── TestDocument.cs │ │ │ ├── TestDocumentWithKey.cs │ │ │ └── TestProjection.cs │ │ ├── TestKeyedMongoRepository.cs │ │ ├── TestKeyedMongoRepositoryContext.cs │ │ ├── TestKeyedReadOnlyMongoRepository.cs │ │ ├── TestKeyedReadOnlyMongoRepositoryContext.cs │ │ ├── TestMongoRepository.cs │ │ ├── TestMongoRepositoryContext.cs │ │ ├── TestReadOnlyMongoRepository.cs │ │ ├── TestReadOnlyMongoRepositoryContext.cs │ │ └── UpdateDefinitionExtensions.cs │ ├── KeyTypedRepositoryTests/ │ │ ├── AddTests/ │ │ │ ├── AddManyAsyncTests.cs │ │ │ ├── AddManyTests.cs │ │ │ ├── AddOneAsyncTests.cs │ │ │ └── AddOneTests.cs │ │ ├── DeleteTests/ │ │ │ ├── DeleteManyAsyncTests.cs │ │ │ ├── DeleteManyTests.cs │ │ │ ├── DeleteOneAsyncTests.cs │ │ │ └── DeleteOneTests.cs │ │ ├── IndexTests/ │ │ │ ├── CreateAscendingIndexAsyncTests.cs │ │ │ ├── CreateCombinedTextIndexAsyncTests.cs │ │ │ ├── CreateDescendingIndexAsyncTests.cs │ │ │ ├── CreateHashedIndexAsyncTests.cs │ │ │ ├── CreateTextIndexAsyncTests.cs │ │ │ ├── DropIndexAsyncTests.cs │ │ │ └── GetIndexNamesAsyncTests.cs │ │ └── UpdateTests/ │ │ ├── UpdateManyAsyncTests.cs │ │ ├── UpdateManyTests.cs │ │ ├── UpdateOneAsyncTests.cs │ │ └── UpdateOneTests.cs │ ├── KeyedReadOnlyMongoRepositoryTests/ │ │ ├── AnyAsyncTests.cs │ │ ├── AnyTests.cs │ │ ├── CountAsyncTests.cs │ │ ├── CountTests.cs │ │ ├── GetAllAsyncTests.cs │ │ ├── GetAllTests.cs │ │ ├── GetByIdAsyncTests.cs │ │ ├── GetByIdTests.cs │ │ ├── GetByMaxAsyncTests.cs │ │ ├── GetByMaxTests.cs │ │ ├── GetByMinAsyncTests.cs │ │ ├── GetByMinTests.cs │ │ ├── GetMaxValueAsyncTests.cs │ │ ├── GetMaxValueTests.cs │ │ ├── GetMinValueAsyncTests.cs │ │ ├── GetMinValueTests.cs │ │ ├── GetOneAsyncTests.cs │ │ ├── GetOneTests.cs │ │ ├── GetSortedPaginatedAsyncTests.cs │ │ ├── GroupByTests.cs │ │ ├── ProjectManyAsyncTests.cs │ │ ├── ProjectManyTests.cs │ │ ├── ProjectOneAsyncTests.cs │ │ ├── ProjectOneTests.cs │ │ └── SumByAsyncTests.cs │ └── ReadOnlyMongoRepositoryTests/ │ ├── AnyAsyncTests.cs │ ├── AnyTests.cs │ ├── CountAsyncTests.cs │ ├── CountTests.cs │ ├── GetAllAsyncTests.cs │ ├── GetAllTests.cs │ ├── GetByIdAsyncTests.cs │ ├── GetByIdTests.cs │ ├── GetByMaxAsyncTests.cs │ ├── GetByMaxTests.cs │ ├── GetByMinAsyncTests.cs │ ├── GetByMinTests.cs │ ├── GetMaxValueAsyncTests.cs │ ├── GetMaxValueTests.cs │ ├── GetMinValueAsyncTests.cs │ ├── GetMinValueTests.cs │ ├── GetOneAsyncTests.cs │ ├── GetOneTests.cs │ ├── GetSortedPaginatedAsyncTests.cs │ ├── GroupByTests.cs │ ├── ProjectManyAsyncTests.cs │ ├── ProjectManyTests.cs │ ├── ProjectOneAsyncTests.cs │ ├── ProjectOneTests.cs │ └── SumByAsyncTests.cs ├── IntegrationTests/ │ ├── App.config │ ├── CRUDObjectIdTests.cs │ ├── CRUDPartitionedCollectionNameAttributeTests.cs │ ├── CRUDPartitionedTests.cs │ ├── CRUDTKeyPartitionedCollectionNameAttributeTests.cs │ ├── CRUDTKeyPartitionedTests.cs │ ├── CRUDTKeyTests.cs │ ├── CRUDTests.cs │ ├── Infrastructure/ │ │ ├── BaseMongoDbRepositoryTests.cs │ │ ├── GlobalVariables.cs │ │ ├── ITestRepository.cs │ │ ├── MongoDBDocumentTestBase.cs │ │ ├── MongoDbTKeyDocumentTestBase.cs │ │ ├── RandomExtensions.cs │ │ ├── TestClasses.cs │ │ └── TestRepository.cs │ ├── IntegrationTests.csproj │ ├── Properties/ │ │ └── AssemblyInfo.cs │ └── packages.config ├── LICENSE ├── MongoDbGenericRepository/ │ ├── Abstractions/ │ │ ├── IBaseMongoRepository.cs │ │ ├── IBaseMongoRepository_Update.cs │ │ ├── IBaseMongoRepository_Update_ClientSession.cs │ │ ├── IBaseReadOnlyRepository.cs │ │ ├── IMongoDbContext.cs │ │ ├── IReadOnlyMongoRepository.TKey.cs │ │ └── IReadOnlyMongoRepository.cs │ ├── Attributes/ │ │ └── CollectionNameAttribute.cs │ ├── BaseMongoRepository.Create.cs │ ├── BaseMongoRepository.Delete.cs │ ├── BaseMongoRepository.Index.cs │ ├── BaseMongoRepository.Main.cs │ ├── BaseMongoRepository.Update.ClientSession.cs │ ├── BaseMongoRepository.Update.cs │ ├── DataAccess/ │ │ ├── Base/ │ │ │ ├── DataAccessBase.cs │ │ │ └── IDataAccessBase.cs │ │ ├── Create/ │ │ │ ├── IMongoDbCreator.cs │ │ │ └── MongoDbCreator.cs │ │ ├── Delete/ │ │ │ ├── IMongoDbEraser.cs │ │ │ └── MongoDbEraser.cs │ │ ├── Index/ │ │ │ ├── IMongoDbIndexHandler.cs │ │ │ └── MongoDbIndexHandler.cs │ │ ├── Read/ │ │ │ ├── IMongoDbReader.cs │ │ │ ├── MongoDbReader.GroupBy.cs │ │ │ ├── MongoDbReader.Main.cs │ │ │ └── MongoDbReader.Project.cs │ │ └── Update/ │ │ ├── IMongoDbUpdater.cs │ │ ├── MongoDbUpdater.ClientSession.cs │ │ └── MongoDbUpdater.cs │ ├── IBaseMongoRepository.Create.cs │ ├── IBaseMongoRepository.Delete.cs │ ├── IBaseMongoRepository.Index.cs │ ├── Internals/ │ │ └── RepositorySerializationProvider.cs │ ├── KeyTypedRepository/ │ │ ├── BaseMongoRepository.TKey.Create.cs │ │ ├── BaseMongoRepository.TKey.Delete.cs │ │ ├── BaseMongoRepository.TKey.Index.cs │ │ ├── BaseMongoRepository.TKey.Main.cs │ │ ├── BaseMongoRepository.TKey.ReadOnly.cs │ │ ├── BaseMongoRepository.TKey.Update.cs │ │ ├── IBaseMongoRepository.TKey.Create.cs │ │ ├── IBaseMongoRepository.TKey.Delete.cs │ │ ├── IBaseMongoRepository.TKey.Index.cs │ │ ├── IBaseMongoRepository.TKey.Update.cs │ │ └── IBaseMongoRepository.TKey.cs │ ├── Models/ │ │ ├── Document.cs │ │ ├── IDocument.cs │ │ ├── IPartitionedDocument.cs │ │ ├── IndexCreationOptions.cs │ │ └── PartitionedDocument.cs │ ├── MongoDbContext.cs │ ├── MongoDbGenericRepository.csproj │ ├── MongoDbGenericRepository.xml │ ├── ReadOnlyMongoRepository.cs │ ├── Utils/ │ │ ├── IdGenerator.cs │ │ ├── Pluralization.cs │ │ └── RandomExtensions.cs │ └── _rels/ │ └── .rels ├── MongoDbGenericRepository.sln └── README.md