1

我正在使用 Entity Framework 5.0,我想知道是否有办法将导航属性标记为已修改。

我看到这可以通过“正常”属性来完成,这样:

context.Entry(blog).Property(u => u.Name).IsModified = true

有没有类似的收藏?:

context.Entry(blog).Collection..???
4

2 回答 2

0

不,这是不可能的,因为最终修改后的属性用于构建更新语句。由于更新语句仅修改原始属性,因此无法将导航属性标记为已修改。

您必须将Collection对象本身中的属性标记为已修改(Collection如果它是对象集合,则标记为对象)。

于 2013-08-14T09:36:41.867 回答
-1

尝试这个:

RepositoryContext.Attach(entity);
var dbEntry = this.RepositoryContext.Entry(entity);
dbEntry.Collection("Addresses").IsModified = true;
于 2020-04-21T19:38:36.063 回答