コード例 #1
0
        public static void Main(string[] args)
        {
            //BuildWebHost(args).Run();

            var host = BuildWebHost(args);

            using (var scope = host.Services.CreateScope())
            {
                var services = scope.ServiceProvider;
                try
                {
                    var UserContext = services.GetRequiredService <UserContext>();
                    UserDbInitializer.Initialize(UserContext);

                    var OrderContext = services.GetRequiredService <OrderContext>();
                    OrderDbInitializer.Initialize(OrderContext, UserContext);

                    //var ReviewContext = services.GetRequiredService<ReviewContext>();
                    //ReviewDbInitializer.Initialize(ReviewContext);
                }
                catch (Exception ex)
                {
                    var logger = services.GetRequiredService <ILogger <Program> >();
                    logger.LogError(ex, "An error occurred while seeding the database.");
                }
            }

            host.Run();
        }
コード例 #2
0
        public OrderService(IOrderContext orderContext, OrderContext seedContext, IMapper mapper)
        {
            _orderContext = orderContext;
            _mapper       = mapper;

            // Only for seeding.
            OrderDbInitializer.Initialize(seedContext);
        }
コード例 #3
0
        public static void Main(string[] args)
        {
            var host = CreateHostBuilder(args).Build();

            using (var scope = host.Services.CreateScope())
            {
                var services       = scope.ServiceProvider;
                var dbRoadFreights = services.GetRequiredService <RoadFreightDbContext>();
                RoadFreightDbInitializer.Initialize(dbRoadFreights);
                var dbSeaFreights = services.GetRequiredService <SeaFreightDbContext>();
                SeaFreightDbInitializer.Initialize(dbSeaFreights);
                var dbAirFreights = services.GetRequiredService <AirFreightDbContext>();
                AirFreightDbInitializer.Initialize(dbAirFreights);
                var dbOrders = services.GetRequiredService <OrderDbContext>();
                OrderDbInitializer.Initialize(dbOrders);
            }

            host.Run();
        }
コード例 #4
0
ファイル: Startup.cs プロジェクト: HugoZink/Ball.com
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory, OrderDbInitializer dbInit)
        {
            loggerFactory.AddConsole(Configuration.GetSection("Logging"));
            loggerFactory.AddDebug();

            app.UseMvc();
            app.UseDefaultFiles();
            app.UseStaticFiles();

            SetupAutoMapper();

            // Enable middleware to serve generated Swagger as a JSON endpoint.
            app.UseSwagger();

            // Enable middleware to serve swagger-ui (HTML, JS, CSS etc.), specifying the Swagger JSON endpoint.
            app.UseSwaggerUI(c =>
            {
                c.SwaggerEndpoint("/swagger/v1/swagger.json", "LogisticsManagement API - v1");
            });

            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            // setup messagehandler
            var    configSection = Configuration.GetSection("RabbitMQ");
            string host          = configSection["Host"];
            string userName      = configSection["UserName"];
            string password      = configSection["Password"];
            RabbitMQMessageHandler messageHandler = new RabbitMQMessageHandler(host, userName, password, "Ball.com", "OrderAPI", "");

            // start event-handler
            var eventHandler = new EventHandler.EventHandler(messageHandler, Configuration.GetConnectionString("OrderManagementCN"));

            eventHandler.Start();

            Policy
            .Handle <Exception>()
            .WaitAndRetry(10, r => TimeSpan.FromSeconds(5))
            .Execute(() =>
            {
                dbInit.Seed().Wait();
            });
        }