EF SaveChanges() - идентификатор против загруженного объекта в ForeignKey
Я нашел странную вещь. Например, у меня есть сущность Order и Item. Товар является ссылкой на заказ по идентификатору. В EF, чтобы сохранить Item, мне нужно сначала загрузить Order и поместить его в поле ссылки? Это единственный способ?
Order order = data.OrderSet.FirstOrDefault(b => b.OrderID == OrderId);
Item item = new Item { order = order };
data.AddToAbzacSet(item);
data.SaveChanges();
1 ответ
Решение
Нет. С EF 1.0 вы можете сделать это, используя ссылочный объект:
Item item = new Item();
item.OrderReference.EntityKey = new EntityKey("YourContext.Order", "ID", OrderID);
data.AddToAbzacSet(item);
data.SaveChanges();