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));
        }