public async Task <IActionResult> Create(SubCategoryAndCategoryViewModel model) { if (ModelState.IsValid) { var subcategory = await subCategoryService.DoesSubCategoryExists(model); if (subcategory != null) { //Error StatusMessage = "Error : Sub Category exists under " + subcategory.Category.Name + " category. Please use another name."; } else { await subCategoryService.AddSubCategory(model.SubCategory); return(RedirectToAction(nameof(Index))); } } var subcategoriesList = await subCategoryService.GetAllSubCategories(); var modelMV = new SubCategoryAndCategoryViewModel() { CategoryList = await categoryService.GetAllCategories(), SubCategory = new SubCategory(), SubCategoryList = subcategoriesList.OrderBy(n => n.Name).Distinct().Select(s => s.Name).ToList(), StatusMessage = StatusMessage }; return(View(modelMV)); }