コード例 #1
0
        public IActionResult Add(AddCatalogViewModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    CatalogDTO сatalogDTO = new CatalogDTO()
                    {
                        Info       = model.Info,
                        Name       = model.Name,
                        ProviderId = model.ProviderId
                    };

                    _сatalogService.AddСatalog(сatalogDTO);

                    string currentUserId = this.User.FindFirst(ClaimTypes.NameIdentifier).Value;
                    _logger.LogInformation($"{DateTime.Now.ToString()}: User {currentUserId} added new catalog");

                    return(RedirectToAction("Index", new { model.ProviderId }));
                }
                catch (ValidationException ex)
                {
                    ModelState.AddModelError(ex.Property, ex.Message);
                    _logger.LogError($"{DateTime.Now.ToString()}: {ex.Property}, {ex.Message}");
                }
            }
            return(View(model));
        }
コード例 #2
0
        public IActionResult Post(CatalogModel model)
        {
            try
            {
                _сatalogService.AddСatalog(ConvertCatalogModelToCatalogDTO(model));

                string currentEmail = this.User.FindFirst(ClaimTypes.Name).Value;
                string userId       = _userHelper.GetUserId(currentEmail);

                if (userId == null)
                {
                    return(NotFound("User not found"));
                }

                _logger.LogInformation($"[{DateTime.Now.ToString()}]:[catalog/post]:[info:create new catalog name {model.Name}]:[user:{userId}]");

                return(Ok(model));
            }
            catch (ValidationException ex)
            {
                _logger.LogError($"[{DateTime.Now.ToString()}]:[catalog/post]:[error:{ex.Property}, {ex.Message}]");

                return(BadRequest(ex.Message));
            }
            catch (Exception ex)
            {
                _logger.LogError($"[{DateTime.Now.ToString()}]:[catalog/post]:[error:{ex}]");

                return(BadRequest());
            }
        }