public async Task <IActionResult> Create(RecipeDetailsPageViewModel input) { if (!this.ModelState.IsValid) { var recipe = await this.recipesService .GetViewModelByIdAsync <RecipeDetailsViewModel>(input.Recipe.Id); var model = new RecipeDetailsPageViewModel { Recipe = recipe, CreateReviewInputModel = input.CreateReviewInputModel, }; return(this.View("/Views/Recipes/Details.cshtml", model)); } var userId = this.userManager.GetUserId(this.User); input.CreateReviewInputModel.UserId = userId; try { await this.reviewsService.CreateAsync(input.CreateReviewInputModel); } catch (ArgumentException aex) { return(this.BadRequest(aex.Message)); } return(this.RedirectToAction("Details", "Recipes", new { id = input.CreateReviewInputModel.RecipeId })); }
public async Task <IActionResult> Details(int id) { var recipe = await this.recipesService.GetViewModelByIdAsync <RecipeDetailsViewModel>(id); var model = new RecipeDetailsPageViewModel { Recipe = recipe, CreateReviewInputModel = new CreateReviewInputModel(), }; return(this.View(model)); }