我有多个字符串值,我想在sql server db表中插入,但我想逐个检查值,如果它已经存在于db中我将更新,如果不是我将插入它。
我正在使用Entity Framework 4.1,我希望我能以最佳性能做到这一点,意味着尽可能少地调用db。
之前我看过this question,但是他们使用的是linq到sql而不是实体框架。
答案 0 :(得分:3)
你可以做的一种方法是批量查询存在...例如,使用.Contains方法(like this),你可以查询可能或可能的部分或全部项目不会立即存在。然后,一旦您在本地获得数据,您可以在插入
之前快速检查它是否在那里