Example #1
0
        private async void CreateCategoryHandler()
        {
            var view = new CreateEditCategoryDialog
            {
                DataContext = new CreateEditCategoryViewModel(),
            };

            var result = await DialogHost.Show(view, "RootDialog", ClosingEventHandler);

            if (result is CreateEditCategoryViewModel data)
            {
                var createdCategory = new Category(Guid.NewGuid(), data.Name);
                await _categoryRepository.AddOne(createdCategory);

                Categories.Add(createdCategory);
            }
        }
    public IActionResult CreateCategory(CreateCategoryViewModel createCategoryViewModel)
    {
        if (!ModelState.IsValid)
        {
            return(View(createCategoryViewModel));
        }

        var category = new Category(Guid.NewGuid(), createCategoryViewModel.CategoryName);

        var categories = _categoryRepository.GetAll();

        if (categories.Any(e => e.Name.ToLower().Equals(category.Name.ToLower())))
        {
            ModelState.AddModelError(string.Empty, $"Category '{category.Name}' already exists");
            return(View(createCategoryViewModel));
        }

        _categoryRepository.AddOne(category);
        return(RedirectToAction(IndexAction, DefaultController));
    }