Example #1
0
 public BO2Service(IMongoConfig config)
 {
     this.BOBsonDocumentCollection  = (IMongoCollection <MongoDB.Bson.BsonDocument>)config.BOBsonDocumentCollection;
     this.BOTBsonDocumentCollection = (IMongoCollection <MongoDB.Bson.BsonDocument>)config.BOTBsonDocumentCollection;
     this.BOTCollection             = (IMongoCollection <BOT>)config.BOTCollection;
     this.BOCollection = (IMongoCollection <BO2>)config.BOCollection;
 }
Example #2
0
        public IRepositoryMongo <T> Repository <T>(IMongoConfig mongoConfig) where T : class, IEntity
        {
            if (_repos.Count() == 0)
            {
                //build default tuple
                _repos.Add(new Tuple <IMongoConfig, SortedList <string, object> >(mongoConfig, new SortedList <string, object>()));
            }

            var repo = _repos.Where(x => x.Item1.ToString() == mongoConfig.ToString()).SingleOrDefault();

            if (repo == null)
            {
                _repos.Add(new Tuple <IMongoConfig, SortedList <string, object> >(mongoConfig, new SortedList <string, object>()));
                repo = _repos.Where(x => x.Item1.ToString() == mongoConfig.ToString()).SingleOrDefault();
            }


            if (!repo.Item2.ContainsKey(MongoUtil.GetCollectioNameFromInterface <T>()))
            {
                var config = repo.Item1;
                repo.Item2.Add(MongoUtil.GetCollectioNameFromInterface <T>(), new RepositoryMongo <T>(config));
            }

            return((IRepositoryMongo <T>)repo.Item2[MongoUtil.GetCollectioNameFromInterface <T>()]);
        }
Example #3
0
 /// <summary>构造函数</summary>
 public ServerAppDataService(IMongoConfig config, IMongoCollection <TDocument> accessor, IMongoCollection <MongoUploadFile> uploadFilesCollection)
 {
     Accessor = accessor;
     FileFormatExtension.Init();
     this.ExtConverterMappers = new Dictionary <string, FileFormatConverters>();
     UploadFileHandler        = new UploadFileHandler(config, uploadFilesCollection);
 }
Example #4
0
        public CustomerRepository(ILogger <CustomerRepository> logger, IMongoConfig settings)
        {
            _logger = logger;
            var client   = new MongoClient(settings.ConnectionString);
            var database = client.GetDatabase(settings.DatabaseName);

            _dbContext = database.GetCollection <Customer>(settings.CollectionName);
        }
Example #5
0
        public MongoRepository(IMongoConfig config)
        {
            _config = config;

            _client = new MongoClient(_config.ConnectionStr);

            _database = _client.GetDatabase(_config.Database);

            _collection = _database.GetCollection <T>(_config.Collection);
        }
Example #6
0
        public RepositoryMongo(IMongoConfig mongoConfig)
        {
            //MongoServer server = MongoServer.Create(mongoConfig.SettingsServer);
            var           cnn    = mongoConfig.MongoUrl;
            MongoServer   server = new MongoClient(cnn).GetServer();
            MongoDatabase db     = server.GetDatabase(mongoConfig.Database.Name);

            _mongoConfig = mongoConfig;
            _collection  = db.GetCollection <T>(MongoUtil.GetCollectioNameFromInterface <T>());
        }
Example #7
0
        private static void Initialize()
        {
            _config   = new MongoConfig("MongoServer");
            _instance = new DataManager();

            _repositoryFactory = new RepositoryFactory(_config);
            _server            = _config.Server;
            _database          = _config.Database;
            _collections       = new SortedList <string, MongoCollection>();
        }
Example #8
0
        /// <summary>
        /// MongoDB数据操作仓库
        /// </summary>
        /// <param name="config">MongoDB配置</param>
        public MongoRepository(IMongoConfig config)
        {
            if (config == null || config.ConnectionString.IsNullOrWhiteSpace() || config.Database.IsNullOrWhiteSpace())
            {
                throw new ArgumentNullException(nameof(config));
            }

            client   = new MongoClient(config.ConnectionString);
            database = client.GetDatabase(config.Database);
        }
Example #9
0
 public static void DropIndexes(IMongoConfig config, Assembly assemblyWithIEntityInterfaces)
 {
     Type[] interfaceTypes = assemblyWithIEntityInterfaces.GetTypes().Where(x => x.IsClass == true).ToArray();
     foreach (var t in interfaceTypes)
     {
         if (typeof(IEntity).IsAssignableFrom(t))
         {
             if (t.GetInterfaces().Where(x => x.Name.StartsWith("IIndex")).Any())
             {
                 MongoDatabase db = new MongoClient(config.MongoUrl).GetServer().GetDatabase(config.Database.Name);
                 db.GetCollection(t.Name).DropAllIndexes();
             }
         }
     }
 }
Example #10
0
 /// <summary>构造函数</summary>
 public UploadFileHandler(IMongoConfig config, IMongoCollection <TDocument> uploadFilesCollection)
 {
     this.UploadDir  = config.IndexUploadFilesDir;
     this.UploadPath = config.IndexUploadFilesPath;
     if (!Directory.Exists(this.UploadPath))
     {
         Directory.CreateDirectory(this.UploadPath);
     }
     this.TempPath = config.IndexUploadTempPath;
     if (!Directory.Exists(this.TempPath))
     {
         Directory.CreateDirectory(this.TempPath);
     }
     this.UploadFilesCollection = uploadFilesCollection;
     this.Bucket = CreateBucket(config.Database.As <IMongoDatabase>());
     ClearTempFiles();
 }
Example #11
0
 public ConnectionManager(IMongoConfig mongoConfig)
 {
     try
     {
         _mongoCredential                = MongoCredential.CreateCredential(mongoConfig.AuthDatabase, mongoConfig.Username, mongoConfig.Password);
         _mongoClientSettings            = new MongoClientSettings();
         _mongoClientSettings.Credential = _mongoCredential;
         _mongoServerAddress             = new MongoServerAddress(mongoConfig.Host, mongoConfig.Port);
         _mongoClientSettings.Server     = _mongoServerAddress;
         _mongoClientSettings.UseSsl     = true;
         _mongoClient = new MongoClient(_mongoClientSettings);
     }
     catch (Exception e)
     {
         throw new InvalidMongoDBConfigurationException("Failed to configure MongoDB connection : " + e.Message, e);
     }
 }
Example #12
0
 /// <summary>构造函数</summary>
 public MongoColletionProvider(IMongoConfig config)
 {
     this.Config = config;
 }
 public MongoBusinessManager(IMongoConfig config) : this(config, new DtoMapper())
 {
 }
Example #14
0
 public UserRepoMongo(IMongoConfig mongoConfig)
 {
     _collection = mongoConfig.Collection;
 }
 /// <summary>构造函数</summary>
 public ServerPageDataService(IMongoConfig config, IMongoCollection <TDocument> accessor, IMongoCollection <MongoUploadFile> uploadFilesCollection)
 {
     Accessor = accessor;
     FileFormatExtension.Init();
     this.UploadFileHandler = new UploadFileHandler(config, uploadFilesCollection);
 }
 public MongoBusinessManager(IMongoConfig config, DtoMapper mapper)
 {
     Client   = new MongoClient(config.ConnectionString);
     Database = Client.GetDatabase(config.Database);
     Mapper   = mapper;
 }
 protected TrendingDal(IMongoConfig config, TrendingDatabase database, string collectionName)
 {
     _dbName = database == TrendingDatabase.Operational ? OperationalDbName : ReportingDbName;
     _config = config;
     _collectionName = collectionName;
 }
 /// <summary>构造函数</summary>
 public AppDataServiceController(IServerAppDataService service, IMongoConfig config)
 {
     ServiceImpl    = service;
     UploadTempPath = config.IndexUploadTempPath;
 }
 public TedRepositorio(IMongoConfig mongoConfig)
 {
     context = mongoConfig.Context;
 }
 public RepositoryFactory(IMongoConfig config)
 {
     this.mongoConfig  = config;
     this.repositories = Repositories.Instance;
 }
 public MongoService(IMongoConfig <T> config)
 {
     _config = config;
 }
 // ReSharper disable once StringLiteralTypo
 // This is the name of the collection without separator - according to MongoDB naming conventions.
 public ArticleTrendingEventsDal(IMongoConfig config, TrendingDatabase database) : base(config, database, CollectionNameOf(database))
 {
 }
Example #23
0
 public static IServiceCollection AddMongo <T>(this IServiceCollection services, IMongoConfig <T> config)
 {
     return(services
            .AddSingleton(config)
            .AddTransient <IMongoService <T>, MongoService <T> >());
 }
Example #24
0
 /// <summary>构造函数</summary>
 public SearchService(IElasticConfig elasticConfig, IMongoConfig mongoConfig, IMongoCollection <MetadataDefinition> accessor)
 {
     MdAccessor = accessor;
     _esAccess  = new ESAccess <Metadata>();
 }
        public RepositoryBase(IMongoClient client, IMongoConfig mongoConfig)
        {
            var database = client.GetDatabase(mongoConfig.Database);

            _collection = database.GetCollection <TModel>(typeof(TModel).Name);
        }
Example #26
0
 public AuthorRepository(IMongoConfig mongoConfig)
 {
     _collection = mongoConfig.Collection;
 }
 public DatabaseProvider(IMongoConfig options)
 {
     this._client = new MongoClient(options.ConnectionString);
     Database     = this._client.GetDatabase(options.DatabaseName);
 }
 public CharacterRepository(IMongoClient client, IMongoConfig config) : base(client, config)
 {
 }
Example #29
0
 public static MongoClient Create(IMongoConfig config)
 {
     return(new MongoClient(new MongoConnectionString(config)));
 }
Example #30
0
        public MongoContext(IMongoConfig mongoConfig)
        {
            var client = new MongoClient(mongoConfig.connectionString);

            _database = client.GetDatabase(mongoConfig.databaseName);
        }