C# LINQ CSV数据库-除此之外的快速方法
我有一对CSV文件 CSV1: 选项编号、产品编号、产品名称 CSV2: 产品编号、产品详细信息、产品详细信息 记录的数量非常高,文件的数量(每周生成一对)也非常高 CSV2将有一些产品详细信息,手动输入产品详细信息 我怎样才能: 1.重新生成CSV1,使其仅包含CSV2中不存在详细信息的产品的产品编号(以及选项和名称) 尝试从代码项目LINQ到CSV,能够很好地读/写 但是,除此之外的部分需要很多时间C# LINQ CSV数据库-除此之外的快速方法,c#,linq,csv,C#,Linq,Csv,我有一对CSV文件 CSV1: 选项编号、产品编号、产品名称 CSV2: 产品编号、产品详细信息、产品详细信息 记录的数量非常高,文件的数量(每周生成一对)也非常高 CSV2将有一些产品详细信息,手动输入产品详细信息 我怎样才能: 1.重新生成CSV1,使其仅包含CSV2中不存在详细信息的产品的产品编号(以及选项和名称) 尝试从代码项目LINQ到CSV,能够很好地读/写 但是,除此之外的部分需要很多时间 var query = from c in dc.Customers
var query =
from c in dc.Customers
where !(from o in dc.Orders
select o.CustomerID)
.Contains(c.CustomerID)
select c;
这是等效的,但仍然太慢
如何修剪使用查询检索的所有字段。
如果要将类型设置为int-产品编号。
这应该会有帮助。请提供您的反馈。我可以提供代码。
但它主要基于codeproject中的LINQTOCSV。您可以在a中从CSV2加载产品编号,然后您的where子句可以变成:
where !hashSet.Contains(productID)
哪个性能应该更好(O(1))从两个文件中选择产品到字典,其中关键是产品编号,然后比较,它会更快。hm,csv1有产品信息,csv2也有产品信息,为什么示例查询是关于客户和订单的?