コード例 #1
0
 public MapperService(IFundsInCategoryService fundsInCategoryService)
 {
     _fundsInCategoryService = fundsInCategoryService;
 }
コード例 #2
0
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env,
                              IFundsInCategoryService catService, ICalculateBudgetFundsService fundsService)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
                app.UseDatabaseErrorPage();
            }
            else
            {
                app.UseExceptionHandler("/Error");
                // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
                app.UseHsts();
            }

            app.UseHttpsRedirection();
            app.UseStatusCodePages();
            app.UseStaticFiles();
            app.UseNodeModules(env);
            app.UseCookiePolicy();

            app.UseAuthentication();

            AutoMapper.Mapper.Initialize(cfg =>
            {
                cfg.CreateMap <BudgetDto, Budget>();

                cfg.CreateMap <BudgetDto, Budget>().ReverseMap()
                .BeforeMap((s, d) => d.UnAllocatedFunds = fundsService.CalculateUnallocateFunds(d.AllocatedFunds, s.AllottedFunds))
                .BeforeMap((s, d) => d.AllocatedFunds   = fundsService.CalculateAllocatedFunds(d.CategoryGroups))
                .BeforeMap((s, d) => d.CategoryGroups   = catService.GroupExpensesByCat(s.Bills));

                cfg.CreateMap <BudgetForCreateOrEditDto, Budget>();

                cfg.CreateMap <BudgetForCreateOrEditDto, Budget>().ReverseMap();

                cfg.CreateMap <BudgetCategoryDto, BudgetCategory>();

                cfg.CreateMap <BudgetCategoryDto, BudgetCategory>().ReverseMap();

                cfg.CreateMap <BudgetCategoryForSelectListDto, BudgetCategory>();

                cfg.CreateMap <BudgetCategoryForSelectListDto, BudgetCategory>().ReverseMap();

                cfg.CreateMap <BillDto, Bill>()
                .IncludeBase <ExpenseBaseDto, ExpenseBase>();

                cfg.CreateMap <BillDto, Bill>()
                .IncludeBase <ExpenseBaseDto, ExpenseBase>()
                .ReverseMap();

                cfg.CreateMap <ExpenseBaseDto, ExpenseBase>();

                cfg.CreateMap <ExpenseBaseDto, ExpenseBase>().ReverseMap();

                cfg.CreateMap <BillForCreateDto, Bill>();

                cfg.CreateMap <BillForCreateDto, Bill>().ReverseMap();
            });

            app.UseMvc();
        }