我需要
将一些实体加载到内存中,
改变它的几个'标量'
属性值 - 无需触及其导航属性。和
将它们作为新实体保存到数据库中。
我如何在 EntityFramework 中实现这一点,是否足以将对象的 ID 设置为 NULL 以将其保存为新实体或者应该是什么技巧?
最佳答案
您只需更改 entity state从 Modified 到 Added,Entity Framework 将执行插入而不是更新。
使用 DbContext API 的示例:
DbContext context = // ...
foreach (var entityEntry in context.ChangeTracker.Entries())
{
if (entityEntry.State == EntityState.Modified)
entityEntry.State = EntityState.Added;
}
ct.SaveChanges();
关于c# - 如何在 Entity Framework 中基于旧实体创建新实体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14191302/