Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 批量同步数据的子集_C#_Entity Framework_Entity Framework Core_Entity Framework Extensions - Fatal编程技术网

C# 批量同步数据的子集

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 |

我正在使用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    |
|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因为你没有回答我的问题,而是给出了一些随机的想法。谢谢!事实上,我昨天自己找到了这个解决方案,而且它很有效。谢谢你提供了一个很棒的图书馆。谢谢!事实上,我昨天自己找到了这个解决方案,而且它很有效。顺便说一句,谢谢你提供了一个很棒的图书馆。