2011-02-26 34 views
0

如果我构造一个类似say,Category的对象,则将值分配给属性,其中一个是与数据库中的行相同的ID,并将其传递给ObejctSet.Attach方法,并在Context上调用SaveChanges,它会更新数据库中的那一行吗?或者是否必须首先检索实体?EF4 ObjectContext.Attach问题?

回答

1

这两种情况都是可能的。不同的是,如果您使用附加或分离的实例工作。

您可以创建对象,将其附加到上下文,对上下文说该对象被修改(将标记对象附加为未更改)并保存更改。

或者

您可以加载来自于上下文对象,修改对象,节省了相同的上下文(你并不需要将其设置为修改因为对象的对象范围内的轨道变化它加载)的变化。

我写了两个场景here的例子。

+0

感谢一堆!喜欢这个网站! – Sam 2011-02-26 22:03:14