public async Task <IActionResult> Edit(InputModels.EditBoardInput input) { if (ModelState.IsValid) { var serviceResponse = await BoardRepository.UpdateBoard(input); return(await this.RedirectFromService(serviceResponse, FailureCallback)); } return(await FailureCallback()); async Task <IActionResult> FailureCallback() { var boardRecord = (await BoardRepository.Records()).First(b => b.Id == input.Id); var viewModel = new ViewModels.Boards.EditPage { Id = boardRecord.Id, Categories = await BoardRepository.CategoryPickList(), Roles = await RoleRepository.PickList(boardRecord.Id) }; viewModel.Name = input.Name; viewModel.Description = input.Description; if (!string.IsNullOrEmpty(input.Category)) { viewModel.Categories.First(item => item.Value == input.Category).Selected = true; } return(View(viewModel)); } }
public async Task <IActionResult> Edit(int id) { var boardRecord = (await BoardRepository.Records()).First(b => b.Id == id); var category = (await BoardRepository.Categories()).First(item => item.Id == boardRecord.CategoryId); var viewModel = new ViewModels.Boards.EditPage { Id = boardRecord.Id, Name = boardRecord.Name, Description = boardRecord.Description, Categories = await BoardRepository.CategoryPickList(), Roles = await RoleRepository.PickList(boardRecord.Id), }; viewModel.Categories.First(item => item.Text == category.Name).Selected = true; return(View(viewModel)); }