此代码有效,但我不明白为什么。使用DeferredLoadingEnabld = false,我希望它不会返回主键。有人可以解释我错过的东西吗?
public void SaveOrder (Order order)
{
using (DataContext dc= new DataContext)
{
dc.DeferredLoadingEnabled = false;
...
order.Total= total;
dc.order.InsertOnSubmit(order);
dc.SubmitChanges();
}
}
按订单服务:
public void ServiceSaveOrder(Order order)
{
Order order= new Order();
SaveOrder(order);
Print(order.ID); //ID= unique primary key
}
答案 0 :(得分:2)
DeferredLoadingEnabled属性仅用于填充外键之间的其他关系,而不是用于在插入后返回ID。您的密钥将始终填充。将DeferredLoadingEnabled设置为true时,不会自动填充任何父或子关系。
有关详细信息,请参阅MSDN文章。