public ActionResult AddDeveloper(AddDeveloperViewModel viewModel) { if (!ModelState.IsValid) { viewModel = this.FillDataSources(viewModel); return(View(viewModel)); } // Generate the token and send it var developerToAddResult = this.MapDeveloper(viewModel); if (developerToAddResult.IsError) { ModelState.AddModelError("", $"Error: { developerToAddResult.Message }"); viewModel = this.FillDataSources(viewModel); return(View(viewModel)); } AddDeveloperDto developerToAdd = developerToAddResult.Data; Result <AddDeveloperDto> result = this.service.AddDeveloper(developerToAdd); if (result.IsError) { viewModel = this.FillDataSources(viewModel); ModelState.AddModelError("", $"Error: { result.Message }"); return(View(viewModel)); } return(RedirectToAction("Developers", "Developer")); }
public ActionResult AddDeveloper() { AddDeveloperViewModel viewModel = new AddDeveloperViewModel(); viewModel = this.FillDataSources(viewModel); return(View(viewModel)); }
private Result <AddDeveloperDto> MapDeveloper(AddDeveloperViewModel viewModel) { Result <AddDeveloperDto> result = new Result <AddDeveloperDto>(); try { AddDeveloperDto dto = Mapper.Map <AddDeveloperViewModel, AddDeveloperDto>(viewModel); if (viewModel.FirstKnownLanguage != null && viewModel.FirstKnownLanguage.LanguageID != ProgrammingLanguage.Select && viewModel.FirstKnownLanguage.SeniorityLevel != SeniorityLevel.Select) { dto.KnownLanguages.Add(Mapper.Map <AddLanguageLearntViewModel, AddLanguageLearntDto>(viewModel.FirstKnownLanguage)); } if (viewModel.SecondKnownLanguage != null && viewModel.SecondKnownLanguage.LanguageID != ProgrammingLanguage.Select && viewModel.SecondKnownLanguage.SeniorityLevel != SeniorityLevel.Select) { dto.KnownLanguages.Add(Mapper.Map <AddLanguageLearntViewModel, AddLanguageLearntDto>(viewModel.SecondKnownLanguage)); } if (viewModel.ThirdKnownLanguage != null && viewModel.ThirdKnownLanguage.LanguageID != ProgrammingLanguage.Select && viewModel.ThirdKnownLanguage.SeniorityLevel != SeniorityLevel.Select) { dto.KnownLanguages.Add(Mapper.Map <AddLanguageLearntViewModel, AddLanguageLearntDto>(viewModel.ThirdKnownLanguage)); } if (viewModel.FourthKnownLanguage != null && viewModel.FourthKnownLanguage.LanguageID != ProgrammingLanguage.Select && viewModel.FourthKnownLanguage.SeniorityLevel != SeniorityLevel.Select) { dto.KnownLanguages.Add(Mapper.Map <AddLanguageLearntViewModel, AddLanguageLearntDto>(viewModel.FourthKnownLanguage)); } if (viewModel.FifthKnownLanguage != null && viewModel.FifthKnownLanguage.LanguageID != ProgrammingLanguage.Select && viewModel.FifthKnownLanguage.SeniorityLevel != SeniorityLevel.Select) { dto.KnownLanguages.Add(Mapper.Map <AddLanguageLearntViewModel, AddLanguageLearntDto>(viewModel.FifthKnownLanguage)); } if (dto.KnownLanguages.Count == 0) { result.SetError("Select at least one language!"); return(result); } return(result.SetData(dto)); } catch (Exception ex) { result.SetError(ex.Message); return(result); } }
private AddDeveloperViewModel FillDataSources(AddDeveloperViewModel viewModel) { IList <DataSourceDto> languagesDataSource = this.dataSourceService.GetLanguagesDataSource(); viewModel.Languages = Mapper.Map <IList <DataSourceDto>, IList <DataSourceViewModel> >(languagesDataSource); IList <DataSourceDto> seniorityLevelsDataSource = this.dataSourceService.GetSeniorityLevelsDataSource(); viewModel.SeniorityLevels = Mapper.Map <IList <DataSourceDto>, IList <DataSourceViewModel> >(seniorityLevelsDataSource); return(viewModel); }
public IActionResult ProcessAddDeveloperForm(AddDeveloperViewModel addDeveloperViewModel) { if (ModelState.IsValid) { Developer developer = new Developer { Name = addDeveloperViewModel.Name }; context.Developers.Add(developer); context.SaveChanges(); return(Redirect("Index")); } return(View("Add", addDeveloperViewModel)); }
public IActionResult Add() { AddDeveloperViewModel addDeveloperViewModel = new AddDeveloperViewModel(); return(View(addDeveloperViewModel)); }