Как вставить сразу несколько полей в базу данных Entity Framework asp.net mvc5?

Суть вопроса:
разрабатывается веб-магазин, соответственно существует Корзина, в которую добавляется товар из Каталога. Из Корзины товары оформляются и переходят в ИсториюЗаказов. Проблема заключается в том, что если в Корзину было добавлено больше одного товара, то и в ИсториюЗаказов "перейдет" только первый добавленный товар, а остальные удаляются.
Бью челом, прошу помощи.
[HttpPost]
        public ActionResult Orders(HistoryOfOrder history ,Order order,Stuff stuff, int Id )
        {
            var user_name = this.User.Identity.Name;
            var find_user = db.Users.FirstOrDefault(u => u.login == user_name);
            var userId = find_user.Id;
            var query2 = 
                         from o in db.Orders
                         where o.UserName == user_name
                         select o;
            var query3 = from h in db.HistoryOfOrders
                         select h;
        

            

            foreach (var all_order in query2)
            {
                if (query2.Count() != 0 )
                {
                    HistoryOfOrder all_history1 = db.HistoryOfOrders.FirstOrDefault(p => history.Id == p.Id);
                    all_order.Adress = order.Adress;
                    all_history1.UserName = all_order.UserName;
                    history.Order_id = all_order.Id;
                    history.NameOfOrder = all_order.NameOfOrder;
                    history.Image = all_order.Image;
                    history.Price = all_order.Price;
                    history.Quantity = all_order.Quantity;
                    history.Summ = all_order.Summ;
                    history.Size = all_order.Size;
                    history.Adress = all_order.Adress;
                    history.OrderTime = System.DateTime.Now;
                    history.Status = "не оформлено";
                    db.Orders.RemoveRange(all_order);
                    db.HistoryOfOrders.Add(history);
                }
                    
            }
           
            db.SaveChanges();
            return RedirectToAction("Orders");
        }
  • Вопрос задан
  • 75 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы