public CosmosDatabaseFixture()
        {
            this.Client = new CosmosClient(ConnectionString);

            this.Service = CosmosDbService <TestItem>
                           .InitializeCosmosClientInstanceAsync(DatabaseName, ConnectionString)
                           .GetAwaiter()
                           .GetResult();

            Assert.NotNull(Service);
        }
        private async Task seedDatabase(IConfigurationSection configurationSection)
        {
            var cosmosDbService = await CosmosDbService.InitializeCosmosClientInstanceAsync(configurationSection);

            // clear out database
            var users = await cosmosDbService.GetItemsAsync <User>("SELECT * FROM c");

            foreach (User u in users)
            {
                await cosmosDbService.DeleteItemAsync(u.id);
            }

            // populate database with fresh data
            await cosmosDbService.AddItemAsync <User>(new User()
            {
                firstName    = "Mark",
                middleName   = "Thomas",
                lastName     = "Jewell",
                phoneNumber  = "123-456-7890",
                emailAddress = "*****@*****.**"
            });

            await cosmosDbService.AddItemAsync <User>(new User()
            {
                firstName    = "Nelson",
                middleName   = "Jacob",
                lastName     = "Packer",
                phoneNumber  = "123-456-7890",
                emailAddress = "*****@*****.**"
            });

            await cosmosDbService.AddItemAsync <User>(new User()
            {
                firstName    = "Bob",
                middleName   = "George",
                lastName     = "Smith",
                phoneNumber  = "123-456-7890",
                emailAddress = "*****@*****.**"
            });

            await cosmosDbService.AddItemAsync <User>(new User()
            {
                firstName    = "Julie",
                middleName   = "Ann",
                lastName     = "Jeffries",
                phoneNumber  = "123-456-7890",
                emailAddress = "*****@*****.**"
            });
        }
Example #3
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddControllers().AddFluentValidation(fv => fv.RegisterValidatorsFromAssemblyContaining <UserValidator>());

            services.AddTransient <IValidator <User>, UserValidator>();

            services.AddProblemDetails();

            var mapper = services.AddAutoMapper(typeof(Startup).Assembly);

            IDbService dbService = CosmosDbService.InitializeCosmosClientInstanceAsync(Configuration.GetSection("CosmosDb")).GetAwaiter().GetResult();

            services.AddSingleton <IDbService>(dbService);

            services.AddSingleton <IUserRepository>(new UserRepository(dbService));
        }