private static void AddNewProduct(ReviewOutputModel newReview, string currentUserId, Model.Catalog.Product product) { product.Reviews.Add(new Review { AuthorId = currentUserId, CustomerServiceRating = newReview.CustomerServiceRating, PriceRating = newReview.PriceRating, QualityRating = newReview.QualityRating, ShipingRating = newReview.ShipingRating, Content = newReview.Content, ProductId = newReview.ProductId }); }
public ActionResult LeaveReview(ReviewOutputModel newReview) { var currentUserId = this.User.Identity.GetUserId(); var product = this.ShopData.Products.Find(newReview.ProductId); if (this.ModelState.IsValid) { var isReviewdByThisUser = this.ShopData.Reviews.All().Any(x => x.AuthorId == currentUserId && x.ProductId == newReview.ProductId); if (isReviewdByThisUser) { return(this.PartialView("_AlreadyReviewdPartial")); } AddNewProduct(newReview, currentUserId, product); this.ShopData.SaveChanges(); return(this.PartialView("_SuccesfullReview")); } return(this.PartialView("_PostReviewPartial", newReview)); }