Exemplo n.º 1
0
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env, ApplicationDbContext appDbContext, ActivityReceiverDbContext arDbContext, IDbContextInitializer dbContextInitializer)
        {
            if (env.IsDevelopment())
            {
                app.UseBrowserLink();
                app.UseDeveloperExceptionPage();
                app.UseDatabaseErrorPage();
            }
            else
            {
                app.UseExceptionHandler("/Home/Error");
            }

            app.UseStaticFiles();

            app.UseAuthentication();

            app.UseMvc(routes =>
            {
                routes.MapRoute(
                    name: "default",
                    template: "{controller=Home}/{action=Index}/{id?}");
            });

            // Initialize Database
            dbContextInitializer.ApplicationDbContextInitialize().Wait();
            dbContextInitializer.MainDbContextInitialize().Wait();

            // Auto Mapper
            AutoMapper.Mapper.Initialize(cfg => {
                /* QuestionManage */
                // Index
                cfg.CreateMap <Question, ActivityReceiver.ViewModels.QuestionManage.QuestionPresenter>();
                // Create
                cfg.CreateMap <ActivityReceiver.ViewModels.QuestionManage.QuestionManageCreatePostViewModel, Question>();
                cfg.CreateMap <ActivityReceiver.ViewModels.QuestionManage.QuestionManageCreatePostViewModel, ActivityReceiver.ViewModels.QuestionManage.QuestionManageCreateGetViewModel>();
                // Edit
                cfg.CreateMap <Question, ActivityReceiver.ViewModels.QuestionManage.QuestionManageEditGetViewModel>();
                cfg.CreateMap <ActivityReceiver.ViewModels.QuestionManage.QuestionManageEditPostViewModel, Question>()
                .ForMember(dest => dest.CreateDate, opt => opt.Ignore())
                .ForMember(dest => dest.EditorID, opt => opt.Ignore());
                cfg.CreateMap <ActivityReceiver.ViewModels.QuestionManage.QuestionManageEditPostViewModel, ActivityReceiver.ViewModels.QuestionManage.QuestionManageEditGetViewModel>();
                // Details
                cfg.CreateMap <Question, ActivityReceiver.ViewModels.QuestionManage.QuestionManageDetailsViewModel>();
                // Delete
                cfg.CreateMap <Question, ActivityReceiver.ViewModels.QuestionManage.QuestionManageDeleteGetViewModel>();
                cfg.CreateMap <ActivityReceiver.ViewModels.QuestionManage.QuestionManageDeletePostViewModel, ActivityReceiver.ViewModels.QuestionManage.QuestionManageDeleteGetViewModel>();

                /* AnswerRepaly */
                //cfg.CreateMap<Movement,ActivityReceiver.ViewModels.AnswerReplay.>();
                //cfg.CreateMap<DeviceAcceleration, DeviceAccelerationDTO>();


                /* AnswerRecordManage*/
                cfg.CreateMap <AnswerRecord, ActivityReceiver.ViewModels.AnswerRecordManage.AnswerRecordPresenter>();
                // Details
                cfg.CreateMap <AnswerRecord, ActivityReceiver.ViewModels.AnswerRecordManage.AnswerRecordManageDetailsViewModel>();


                /* AssignmentManage */
                cfg.CreateMap <AnswerRecord, ActivityReceiver.ViewModels.AssignmentRecordManage.AnswerRecordPresenter>();
                // Index
                cfg.CreateMap <AssignmentRecord, ActivityReceiver.ViewModels.AssignmentRecordManage.AssignmentRecordPresenter>();
                // Details
                cfg.CreateMap <AssignmentRecord, ActivityReceiver.ViewModels.AssignmentRecordManage.AssignmentRecordManageDetailsViewModel>();

                /* ExerciseManage */
                // Index
                cfg.CreateMap <Exercise, ActivityReceiver.ViewModels.ExerciseManage.ExercisePresenter>();
                // Create
                cfg.CreateMap <ActivityReceiver.ViewModels.ExerciseManage.ExerciseManageCreatePostViewModel, Exercise>();
                cfg.CreateMap <ActivityReceiver.ViewModels.ExerciseManage.ExerciseManageCreatePostViewModel, ActivityReceiver.ViewModels.ExerciseManage.ExerciseManageCreateGetViewModel>();
                // Edit
                cfg.CreateMap <Exercise, ActivityReceiver.ViewModels.ExerciseManage.ExerciseManageEditGetViewModel>();
                cfg.CreateMap <ActivityReceiver.ViewModels.ExerciseManage.ExerciseManageEditPostViewModel, Exercise>()
                .ForMember(dest => dest.CreateDate, opt => opt.Ignore())
                .ForMember(dest => dest.EditorID, opt => opt.Ignore());
                cfg.CreateMap <ActivityReceiver.ViewModels.ExerciseManage.ExerciseManageEditPostViewModel, ActivityReceiver.ViewModels.ExerciseManage.ExerciseManageEditGetViewModel>();
                // Details
                cfg.CreateMap <Exercise, ActivityReceiver.ViewModels.ExerciseManage.ExerciseManageDetailsViewModel>();
                // Delete
                cfg.CreateMap <Exercise, ActivityReceiver.ViewModels.ExerciseManage.ExerciseManageDeleteGetViewModel>();
                cfg.CreateMap <ActivityReceiver.ViewModels.ExerciseManage.ExerciseManageDeletePostViewModel, ActivityReceiver.ViewModels.ExerciseManage.ExerciseManageDeleteGetViewModel>();

                /* StudentManage */
                // Index
                cfg.CreateMap <ApplicationUser, ActivityReceiver.ViewModels.StudentManage.StudentPresenter>();

                /* DataTransferObject */
                // MovementSupervised
                cfg.CreateMap <Movement, ActivityReceiver.DataTransferObjects.MovementSupervised>();
            });
        }
Exemplo n.º 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, ILoggerFactory loggerFactory,
                              IApplicationLifetime appLifetime, IOptions <TokenProviderOptions> tokenProviderOptions,
                              IOptions <TokenAuthenticationOptions> tokenAuthenticationOptions, IDbContextInitializer dbInitializer)
        {
            loggerFactory.AddConsole(Configuration.GetSection("Logging"));
            loggerFactory.AddDebug();

            app.SetupJwtTokenGenerator(tokenAuthenticationOptions.Value);
            app.UseMiddleware <TokenProviderMiddleware>(Options.Create(tokenProviderOptions.Value));

            app.UseMvc();

            dbInitializer.Initialize();

            appLifetime.ApplicationStopped.Register(() => Container.Dispose());
        }