实体框架自动确定是否更新或创建实体

时间:2018-01-05 15:57:27

标签: entity-framework orm crud

我是EF的新手。 在互联网上搜索了几个小时后,我想在这里问我的问题。

EF中是否确实没有内置机制来确定是否更新或创建实体?

假设我有一个POCO对象列表,并希望将它们保存到数据库中。

现在我真的必须区分一个实体是否已经存在(更新)或不存在(插入)与context.Add并且必须在处理之前进行查找?

我预计,当主键字段为空或空时,EF会自动执行插入,否则更新?

1 个答案:

答案 0 :(得分:1)

IvanStoev在评论中提到简短的回答是

  

没有。告诉EF该做什么是你的责任。

但是你可以使用黑客攻击。 const Input = (props) => { return( <input type="file" onChange={props.changed} onClick={props.clicked} > Upload </input> ) } 命名空间中的AddOdUpdate扩展方法。

无论如何,我相信在你的情况下使用它并不是一个好主意。您应该控制您在代码中执行的操作,并且每次尝试破解某些内容时,都意味着您没有正确执行此操作。我建议你阅读附件链接。

相关链接:

AddOrUpdate method

Entity Framework: AddOrUpdate is a Destructive Operation