有没有办法调用T-Sql's MERGE来自 .NET Entity Framework 4 的命令?
最佳答案
不,没有这样的内置功能 - 您必须构建自己的功能。例如,非常常见的方法如下:
public void SaveOrUpdate(MyEntity entity)
{
if (entity.Id == 0)
{
context.MyEntities.AddObject(entity);
}
else
{
context.MyEntities.Attach(entity);
context.ObjectStateManager.ChangeObjectState(entity, EntityState.Modified);
}
// You can call SaveChanges here or you can call it separately after multiple changes
}
这是使用在数据库中自动生成 Id
(IDENTITY
) 的分离实体的示例。新实体的默认 ID 始终为 0,因为实际值将在保存更改期间分配。
关于c# - 在 Entity Framework 中合并,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5842125/