//[HttpPost] //[ValidateAntiForgeryToken] //public async Task<IActionResult> Create([Bind("DHId, DHDrink, DHDIHelper")] DrinkHelper drinkHelper) //{ // drinkHelper.DHDrink.DrinkId = await _context.Drink.MaxAsync(m => m.DrinkId) + 1; // Drink drink = new Drink(); // drink = drinkHelper.DHDrink; // List<DrinkIngridientsHelper> dih = new List<DrinkIngridientsHelper>(); // dih = drinkHelper.DHDIHelper; // List<DrinkIngridients> drinkIngridients = new List<DrinkIngridients>(); // for(int i = 0; i < dih.Count; i++) // { // DrinkIngridients di = new DrinkIngridients // { // DrinkId = drinkHelper.DHDrink.DrinkId, // //IngridientId = dih[i].IngridientId, // IngridientId = _context.Ingridient.SingleOrDefault(m => m.IngridName == dih[i].IngridName).IngridId, // Capacity = dih[i].Capacity // }; // drinkIngridients.Add(di); // } // if (ModelState.IsValid) // { // _context.Add(drink); // await _context.SaveChangesAsync(); // _context.AddRange(drinkIngridients); // await _context.SaveChangesAsync(); // return RedirectToAction(nameof(Index)); // } // return View(drinkHelper); //} //################################################################################################ //GET: Drinks/Edit/5 //################################################################################################ public async Task <IActionResult> Edit(int?id) { if (id == null) { return(NotFound()); } var drink = await _context.Drink.SingleOrDefaultAsync(m => m.DrinkId == id); var drinkIngridients = await _context.DrinkIngridients.Where(m => m.DrinkId == id).ToListAsync(); var temp = await(from di in _context.DrinkIngridients join i in _context.Ingridient on di.IngridientId equals i.IngridId where di.DrinkId == id select new { DrinkId = di.DrinkId, IngridId = di.IngridientId, IngridName = i.IngridName, Capacity = di.Capacity }).ToListAsync(); DrinkHelper drinkHelper = new DrinkHelper(); drinkHelper.DHId = drink.DrinkId; drinkHelper.DHDrink = drink; for (int i = 0; i < temp.Count; i++) { DrinkIngridientsHelper dih = new DrinkIngridientsHelper { DrinkId = temp[i].DrinkId, //IngridientId = temp[i].IngridId, IngridName = temp[i].IngridName, Capacity = temp[i].Capacity }; drinkHelper.DHDIHelper.Add(dih); } if (drink == null) { return(NotFound()); } return(View(drinkHelper)); //if (id == null) //{ // return NotFound(); //} //var drink = await _context.Drink.SingleOrDefaultAsync((System.Linq.Expressions.Expression<Func<Drink, bool>>)(m => m.DrinkId == id)); //if (drink == null) //{ // return NotFound(); //} //return View(drink); }
//################################################################################################ //GET: Drinks/5 //################################################################################################ public async Task <IActionResult> Drink(int?id) { if (id == null) { return(NotFound()); } var drink = await _context.Drink.SingleOrDefaultAsync(m => m.DrinkId == id); var drinkIngridients = await _context.DrinkIngridients.Where(m => m.DrinkId == id).ToListAsync(); var temp = await(from di in _context.DrinkIngridients join i in _context.Ingridient on di.IngridientId equals i.IngridId where di.DrinkId == id select new { DrinkId = di.DrinkId, IngridId = di.IngridientId, IngridName = i.IngridName, Capacity = di.Capacity }).ToListAsync(); DrinkHelper drinkHelper = new DrinkHelper(); drinkHelper.DHId = drink.DrinkId; drinkHelper.DHDrink = drink; for (int i = 0; i < temp.Count; i++) { DrinkIngridientsHelper dih = new DrinkIngridientsHelper { DrinkId = temp[i].DrinkId, //IngridientId = temp[i].IngridId, IngridName = temp[i].IngridName, Capacity = temp[i].Capacity }; drinkHelper.DHDIHelper.Add(dih); } //drinkHelper.DHDrinkIngrid = drinkIngridients; //var drinkIngridients = await _context.DrinkIngridientsTable.Select(m => new DrinkIngridientsTable //{ // DrinkId = m.DrinkId, // IngridientId = m.IngridientId, // Capacity = m.Capacity //}).ToListAsync(); //var drink = new Drink(drinkTable.DrinkId, drinkTable, drinkIngridients); if (drink == null) { return(NotFound()); } return(View(drinkHelper)); }