コード例 #1
0
        public static void AddMyMongoDb(this IServiceCollection services, IConfiguration config)
        {
            InstantSerializer.Register();
            LocalDateSerializer.Register();
            LocalTimeSerializer.Register();

            ConventionRegistry.Register("EnumStringConvention", new ConventionPack
            {
                new EnumRepresentationConvention(BsonType.String)
            }, t => true);

            services.Configure <MongoDbOptions>(
                config.GetSection("mongoDb"));

            services.AddSingletonAs(c =>
            {
                var connectionString = c.GetRequiredService <IOptions <MongoDbOptions> >().Value.ConnectionString;

                return(new MongoClient(connectionString));
            })
            .As <IMongoClient>();

            services.AddSingletonAs(c =>
            {
                var databaseName = c.GetRequiredService <IOptions <MongoDbOptions> >().Value.DatabaseName;

                return(c.GetRequiredService <IMongoClient>().GetDatabase(databaseName));
            })
            .As <IMongoDatabase>();
        }
コード例 #2
0
ファイル: AssetQueryTests.cs プロジェクト: jrlost/squidex
        static AssetQueryTests()
        {
            DomainIdSerializer.Register();

            TypeConverterStringSerializer <RefToken> .Register();

            TypeConverterStringSerializer <Status> .Register();

            InstantSerializer.Register();
        }
コード例 #3
0
        public MongoDbSchedulerStoreFixture()
        {
            InstantSerializer.Register();

            var mongoClient   = new MongoClient("mongodb://localhost");
            var mongoDatabase = mongoClient.GetDatabase("Testing");

            Store = new MongoDbSchedulerStore <int>(mongoDatabase, new SchedulerOptions {
                QueueName = "Numbers"
            });
            Store.InitializeAsync(default).Wait();
コード例 #4
0
        public SchemasHashFixture()
        {
            InstantSerializer.Register();

            var mongoClient   = new MongoClient(TestConfig.Configuration["mongodb:configuration"]);
            var mongoDatabase = mongoClient.GetDatabase(TestConfig.Configuration["mongodb:database"]);

            var schemasHash = new MongoSchemasHash(mongoDatabase);

            Task.Run(async() =>
            {
                await schemasHash.InitializeAsync(default);
コード例 #5
0
        public SchemasHashFixture()
        {
            InstantSerializer.Register();

            mongoDatabase = mongoClient.GetDatabase("QueryTests");

            var schemasHash = new MongoSchemasHash(mongoDatabase);

            Task.Run(async() =>
            {
                await schemasHash.InitializeAsync();
            }).Wait();

            SchemasHash = schemasHash;
        }
コード例 #6
0
        public MongoDbUserNotificationRepositoryFixture()
        {
            ActivityContextSerializer.Register();
            ActivitySpanIdSerializer.Register();
            ActivityTraceIdSerializer.Register();

            InstantSerializer.Register();

            var mongoClient   = new MongoClient("mongodb://localhost");
            var mongoDatabase = mongoClient.GetDatabase("Notifo_Testing");

            var options = new UserNotificationsOptions
            {
                MaxItemsPerUser = 100
            };

            var log = A.Fake <ILogger <MongoDbUserNotificationRepository> >();

            Repository = new MongoDbUserNotificationRepository(mongoDatabase, Options.Create(options), log);
            Repository.InitializeAsync(default).Wait();
コード例 #7
0
        public static void AddMyMongoDb(this IServiceCollection services, IConfiguration config)
        {
            ActivityContextSerializer.Register();
            ActivitySpanIdSerializer.Register();
            ActivityTraceIdSerializer.Register();
            DurationSerializer.Register();
            InstantSerializer.Register();
            LocalDateSerializer.Register();
            LocalTimeSerializer.Register();

            ConventionRegistry.Register("EnumStringConvention", new ConventionPack
            {
                new EnumRepresentationConvention(BsonType.String)
            }, t => true);

            ConventionRegistry.Register("IgnoreExtraElements", new ConventionPack
            {
                new IgnoreExtraElementsConvention(true)
            }, t => true);

            services.ConfigureAndValidate <MongoDbOptions>(config, "storage:mongoDb");

            services.AddSingletonAs(c =>
            {
                var connectionString = c.GetRequiredService <IOptions <MongoDbOptions> >().Value.ConnectionString;

                return(new MongoClient(connectionString));
            })
            .As <IMongoClient>();

            services.AddSingletonAs(c =>
            {
                var databaseName = c.GetRequiredService <IOptions <MongoDbOptions> >().Value.DatabaseName;

                return(c.GetRequiredService <IMongoClient>().GetDatabase(databaseName));
            })
            .As <IMongoDatabase>();
        }
コード例 #8
0
 static MongoDbQueryTests()
 {
     InstantSerializer.Register();
 }
コード例 #9
0
ファイル: ODataQueryTests.cs プロジェクト: zxbe/squidex
 static ODataQueryTests()
 {
     InstantSerializer.Register();
 }