public async Task <Result <FoodDto> > EditFoodAsync(int foodId, FoodForUpdateDto food) { var isFoodExists = await IsFoodExistsAsync(foodId); if (!isFoodExists) { return(Result <FoodDto> .Failure(new List <string> { string.Format(FoodsConstants.UnexistingFoodById, foodId) })); } var foodFromDb = await context .Foods .Include(x => x.FoodCategory) .FirstOrDefaultAsync(food => food.Id == foodId); var updatedFood = food .MapTo <FoodForUpdateDto, Food>(foodFromDb); await context .SaveChangesAsync(); var foodToReturn = updatedFood .MapTo <FoodDto>(); return(Result <FoodDto> .SuccessWith(foodToReturn)); }
public async Task <ActionResult> EditFood(int foodId, FoodForUpdateDto food) { var isFoodExists = await this.foodsService .IsFoodExistsAsync(foodId); if (!isFoodExists) { return(NotFound(FoodsConstants.UnexistingFoodById)); } var isFoodCategoryExists = await this.foodsService .IsFoodCategoryExistsAsync(food.FoodCategoryId); if (!isFoodCategoryExists) { return(NotFound(FoodCategoriesConstants.UnexistingFoodCategoryId)); } var result = await this.foodsService .EditFoodAsync(foodId, food); return(CreatedAtRoute("GetFood", new { foodId }, result.Data)); }
public void UpdateFood(FoodForUpdateDto food) { string url = @"http://localhost:5000/api/Foods/wpf"; _ = HttpClient.PutAsync( requestUri: url, content: new StringContent(JsonConvert.SerializeObject(food), Encoding.UTF8, mediaType: "application/json") ).Result; }