Avatar billede ReneDahl Praktikant
31. maj 2016 - 04:04

EF relateret tabeller, indsæt id. Men hvordan?

Hej Gutter :0)

Sidder og roder lidt med EF6, i min controller Accept har jeg mulighed for at sætte ordre og ordre itemer ind i 2 tabeller som er relateret, men jeg har problemer med at få id'et fra ordre tabellen indsat i min ordre item tabel.

Benytter mig af EF, og har ikke den store erfaring med EF men jeg leder efter en måde så EF automatisk indsætter det relaterende id.

public ActionResult Accept(Order order)
        {

            order.orderDetails = new List<OrderItem>();
            var cart = (List<Item>)Session["cart"];

           
            foreach (var item in cart)
            {
               
             
                var itemOrder = new OrderItem
                {
           


                    orderName = item.Product.productName,
                    salePrice = item.Product.consignment.salePrice,
                    quantity = item.Quantity
       
               
                };

                var ord = new Order()
                {
                    firstName = order.firstName,
                    lastName = order.lastName,
                    Email = order.Email,
                    phone = order.phone,
                    postalCode = order.postalCode,
                    city = order.city
                };

                var ordre = db.Orders.Find();
                db.Entry(ordre).Reference(o => o.orderDetails).Load();


                db.Orders.Add(ord);
                order.orderDetails.Add(itemOrder);
                db.OrderItems.Add(itemOrder);

            }

     

            db.SaveChanges();

            return View();
        }
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester