moim stole jest tonajlepsze praktyki/droga do głównego szczegół/multi tabeli wstawić Entity Framework
Orders
------
Id int identity
OrderDate smalldatetime
OrderStatusid tinyint
Products
--------
Id int identity
Name varchar(50)
OrderDetails
------------
Id int identity
OrderId int (fkey)
ProductId int (fkey)
Amount decimal
Rate decimal
Próbuję operacji insert przy użyciu Entity Framework przy użyciu kodu poniżej
Jest to najlepszy sposób zrobić wkładkę?
nie jestem zadowolony ze sposobu Dostaję pełną pozycję produktów z obiektu kontekstowego, zamiast być w stanie po prostu przypisać prosty wartość ProductId
using (MyContextEntities ctx = new MyContextEntities())
{
Orders newOrder = new Orders()
{
Name = "Gayle Wynand",
OrderDate = DateTime.Now,
IsComplete = true,
Comments = "test",
OrderStatusId = 2,
IsActive = true
};
OrderDetails ode = new OrderDetails();
ode.Products = ctx.Products.First(p => p.Id == 2); // any other way?
ode.Quantity = 2;
ode.Rate = 5.2;
newOrder.OrderDetails.Add(ode);
OrderDetails ode2 = new OrderDetails();
ode2.Products = ctx.Products.First(p => p.Id == 3); // any other way?
ode2.Quantity = 3;
ode2.Rate =6.5;
newOrder.OrderDetails.Add(ode2);
ctx.AddToOrders(newOrder);
ctx.SaveChanges();
}
Czy to jest prawidłowy sposób zrobić szczegół głównego wstawić czy istnieje lepszy/inny sposób.
brakuje 'AddTo' ... Dzięki! –
nrod