public async Task <ActionResult> Edit(LotModel model) { if ((!User.IsInRole("Admin") && User.Identity.GetUserId() != model.SellerId) || !string.IsNullOrWhiteSpace(model.BuyerId)) { return(RedirectToAction("Forbidden", "Errors")); } if (ModelState.IsValid) { var result = await _lotService.UpdateAsync(model); if (result.Succedeed) { return(RedirectToAction("Details", new { id = ((LotModel)result.ReturnValue).Id })); } foreach (var error in result.ValidationResults) { ModelState.AddModelError(error.MemberNames.First(), error.ErrorMessage); } } return(View(model)); }