Beispiel #1
0
        public void DropCollectionAndRecreate()
        {
            const string collectionName = nameof(FileMetaBase);

            var droppedCollectionIndexes = DatabaseInstance.GetCollection(collectionName).GetIndexes().ToList();

            DatabaseInstance.DropCollection(collectionName);

            foreach (var indexInfo in droppedCollectionIndexes)
            {
                DatabaseInstance.Engine.EnsureIndex(collectionName, indexInfo.Field, indexInfo.Expression);
            }
        }
        public void IterationCleanup()
        {
            var collectionNames = DatabaseInstance.GetCollectionNames().ToList();

            foreach (var collectionName in collectionNames)
            {
                var droppedCollectionIndexes = DatabaseInstance.GetCollection(collectionName).GetIndexes().ToList();
                DatabaseInstance.DropCollection(collectionName);

                foreach (var indexInfo in droppedCollectionIndexes)
                {
                    DatabaseInstance.Engine.EnsureIndex(collectionName, indexInfo.Field, indexInfo.Expression);
                }
            }
        }
Beispiel #3
0
        public void DropCollectionAndRecreate()
        {
            const string collectionName = nameof(FileMetaBase);

            var indexesCollection        = DatabaseInstance.GetCollection("$indexes");
            var droppedCollectionIndexes = indexesCollection.Query().Where(x => x["collection"] == collectionName && x["name"] != "_id").ToDocuments().ToList();

            DatabaseInstance.DropCollection(collectionName);

            foreach (var indexInfo in droppedCollectionIndexes)
            {
                DatabaseInstance.GetCollection(collectionName)
                .EnsureIndex(indexInfo["name"], BsonExpression.Create(indexInfo["expression"]), indexInfo["unique"]);
            }

            DatabaseInstance.Checkpoint();
        }
Beispiel #4
0
        public void IterationCleanup()
        {
            var indexesCollection        = DatabaseInstance.GetCollection("$indexes");
            var droppedCollectionIndexes = indexesCollection.Query().Where(x => x["name"] != "_id").ToDocuments().ToList();

            var collectionNames = DatabaseInstance.GetCollectionNames();

            foreach (var name in collectionNames)
            {
                DatabaseInstance.DropCollection(name);
            }

            foreach (var indexInfo in droppedCollectionIndexes)
            {
                DatabaseInstance.GetCollection(indexInfo["collection"])
                .EnsureIndex(indexInfo["name"], BsonExpression.Create(indexInfo["expression"]), indexInfo["unique"]);
            }

            DatabaseInstance.Checkpoint();
            DatabaseInstance.Rebuild();
        }
Beispiel #5
0
 /// <summary>
 /// Gibt eine IMongoCollection anhand des Names der Liste zurück
 /// </summary>
 /// <typeparam name="TDocument">Das Dokument, was ausgelesen werden soll</typeparam>
 /// <param name="name"></param>
 /// <param name="settings"></param>
 /// <returns></returns>
 public IMongoCollection <TDocument> GetCollection <TDocument>(string name, MongoCollectionSettings settings = null)
     where TDocument : ModelBaseObject
 {
     return(DatabaseInstance.GetCollection <TDocument>(name, settings));
 }