public async Task <IActionResult> Create(AnimalViewModel model) { if (ModelState.IsValid) { if ((this.User.Identity.Name != model.User.UserName) && !this.User.IsInRole("Admin")) { return(NotFound()); } var user = await _userHelper.GetUserByEmailAsync(model.User.UserName); if (user == null) { return(NotFound()); } var animal = _converterHelper.ToAnimal(model, true); animal.User = user; await _animalRepository.CreateAsync(animal); return(RedirectToAction(nameof(Index))); } return(View(model)); }