Esempio n. 1
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddDistributedMemoryCache()
            .AddNpgsqlService(Configuration)
            .AddSwaggerService()
            .AddCors()
            .AddControllers();

            services.AddSession(options =>
            {
                options.IdleTimeout = TimeSpan.FromSeconds(60);
            });

            services.AddApiVersioning(options =>
            {
                options.ReportApiVersions = true;
            });
            Assembly[] assemblies = { this.GetType().Assembly };
            services.AddAutoMapper(assemblies: assemblies);

            services.AddRouting(options =>
            {
                options.LowercaseUrls = true;
            });

            // Needs following to get current user information outside controller
            // because IHttpContextAccessor is no longer registered by default.
            // Used to save 'CreatedBy' and 'ModifiedBy' information.
            services.TryAddSingleton <IHttpContextAccessor, HttpContextAccessor>();

            services.AddMediatR(typeof(Bootstrap));
            services.AddAFFHARepositories();
            services.AddTransient <IWeatherService, WeatherService>();
        }