public IActionResult AddTechnique(TechniqueAddViewModel viewModel) { if (ModelState.IsValid) { if (viewModel.Id == 0) { var asset = new TextAsset() { Key = "technique_value" }; asset.Value_pl = viewModel.NamePl; asset.Value_en = viewModel.NameEn; _textRepo.SaveAsset(asset); var technique = new Technique() { Name = asset }; _techniqueRepo.Save(technique); var queryParams = new Dictionary <string, string>() { { "messageKey", "success_technique_added" }, { "returnUri", "/GalleryEditor/ManageTechniques" } }; return(Redirect(QueryHelpers.AddQueryString("/InformationScreens/Success", queryParams))); } else { var technique = _techniqueRepo.Techniques.Where(t => t.ID == viewModel.Id).FirstOrDefault(); technique.Name.Value_pl = viewModel.NamePl; technique.Name.Value_en = viewModel.NameEn; _textRepo.UpdateAsset(technique.Name); _techniqueRepo.Update(technique); var queryParams = new Dictionary <string, string>() { { "messageKey", "success_technique_updated" }, { "returnUri", "/GalleryEditor/ManageTechniques" } }; return(Redirect(QueryHelpers.AddQueryString("/InformationScreens/Success", queryParams))); } } else { viewModel.TextRepository = _textRepo; return(View("AddTechnique", viewModel)); } }