Exemple #1
0
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddCors();
            services.AddControllers();
            services.TryAddSingleton <IHttpContextAccessor, HttpContextAccessor>();
            services.AddScoped <IActionResultConverter, ActionResultConverter>();
            services.ConfigureSwagger();

            RepositoryConfiguration.ConfigureServices(services);
            DomainServiceConfiguration.ConfigureServices(services);
            ValidatorsConfiguration.ConfigureServices(services);
            AppServicesConfiguration.ConfigureServices(services);
        }
Exemple #2
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.Configure <CookiePolicyOptions>(options =>
            {
                // This lambda determines whether user consent for non-essential cookies is needed for a given request.
                options.CheckConsentNeeded    = context => true;
                options.MinimumSameSitePolicy = SameSiteMode.None;
            });

            services.AddDbContext <ApplicationDbContext>(options =>
            {
                options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection"), option => option.MigrationsAssembly("TODOApp.DataAccessLayer"));
            });
            services.AddDefaultIdentity <ApplicationUser>()
            .AddUserManager <UserManagerExtended>()
            .AddEntityFrameworkStores <ApplicationDbContext>();

            services.AddMvc(setupAction =>
            {
                setupAction.EnableEndpointRouting = false;
                var policy = new AuthorizationPolicyBuilder().RequireAuthenticatedUser().Build();

                setupAction.Filters.Add(new AuthorizeFilter(policy));
            }).AddJsonOptions(jsonOptions =>
            {                   // change camelCase Json results to PascalCase
                jsonOptions.JsonSerializerOptions.PropertyNamingPolicy = null;
            })
            .SetCompatibilityVersion(CompatibilityVersion.Version_3_0);



            services.AddRazorPages();

            services.AddAutoMapper(AppDomain.CurrentDomain.GetAssemblies());


            services.AddKendo();

            RepositoryConfiguration.ConfigureServices(services);
            HostedServicesConfiguration.ConfigureServices(services);

            // managers
            ManagerConfiguration.ConfigureServices(services);

            // search criterias
            services.AddTransient <TodoItemSearchCriteria>();
            services.AddTransient <UserSearchCriteria>();
        }