C# 批量同步数据的子集
我正在使用EF扩展,希望同步数据的一个子集 例如,我的表格:C# 批量同步数据的子集,c#,entity-framework,entity-framework-core,entity-framework-extensions,C#,Entity Framework,Entity Framework Core,Entity Framework Extensions,我正在使用EF扩展,希望同步数据的一个子集 例如,我的表格: |Type|Value| ------------ |A |1 | |B |2 | |B |3 | |A |4 | |A |5 | 新数据来了 |Type|Value| ------------ |B |6 | |B |7 | |B |8 | 我想替换掉所有的Bs,而不去碰它 |Type|Value| ------------ |A |1 |
|Type|Value|
------------
|A |1 |
|B |2 |
|B |3 |
|A |4 |
|A |5 |
新数据来了
|Type|Value|
------------
|B |6 |
|B |7 |
|B |8 |
我想替换掉所有的Bs,而不去碰它
|Type|Value|
------------
|A |1 |
|B |6 |
|B |7 |
|B |8 |
|A |4 |
|A |5 |
有没有办法通过批量操作来实现这一点?免责声明:我是项目的所有者 您正在查找
列SynchronizeDeleteKeySubsetExpression
选项
例如,只有与新数据中的类型相同的类型
(因此只有B
类型)才会被删除:
ctx.BulkSynchronize(list, options => options.ColumnSynchronizeDeleteKeySubsetExpression = c => c.Type);
如果您需要一些帮助来实现它,请告诉我。免责声明:我是项目的所有者
您正在查找列SynchronizeDeleteKeySubsetExpression
选项
例如,只有与新数据中的类型相同的类型
(因此只有B
类型)才会被删除:
ctx.BulkSynchronize(list, options => options.ColumnSynchronizeDeleteKeySubsetExpression = c => c.Type);
如果您需要一些帮助来实现它,请告诉我。您尝试过做什么?我尝试过wait\u context.BulkSynchronizeAsync(users,options=>options.ColumnPrimaryKeyExpression=type=>type.type)代码>但它会删除除新数据之外的所有内容BulkMerge
根本不删除旧数据。@ArturShamsutdinov为什么不投票?@viveknuna因为你没有回答我的问题,而是给出了一些随机的想法。你试过做什么?我试过Wait\u context.BulkSynchronizeAsync(用户,选项=>options.ColumnPrimaryKeyExpression=type=>type.type)代码>但它会删除除新数据之外的所有内容BulkMerge
根本不会删除旧数据。@ArturShamsutdinov为什么不投票?@viveknuna因为你没有回答我的问题,而是给出了一些随机的想法。谢谢!事实上,我昨天自己找到了这个解决方案,而且它很有效。谢谢你提供了一个很棒的图书馆。谢谢!事实上,我昨天自己找到了这个解决方案,而且它很有效。顺便说一句,谢谢你提供了一个很棒的图书馆。