我写了一个linq查询来读取.csv文件:

var csv =
    from line in File.ReadAllLines("C:/file.csv")
    let customerRecord = line.Split(',')
    select new Customer()
        {
            contactID = customerRecord[0],
            surveyDate = customerRecord[1],
            project = customerRecord[2],
            projectCode = customerRecord[3]
        };


从这里,我想将contactID上的数据内部连接到另一个查询:

var prods =
    from prd in products
    join con in contacts
    on prd.PrimaryContact equals con.ContactID
    select new {createdDate = prd.CreatedDate, contactID = con.ContactID};


我是linq的新手,并且想知道如何将来自CSV的数据连接到contactID字段上的产品。

非常感谢您的事先帮助,非常感谢。

最佳答案

编辑:我想我有。

var merged = from cr in csv
  join pr in prods
  on cr.contactID equals pr.contactID
  select new{
    cr.contactID,
    cr.surveyDate,
    cr.project,
    cr.projectCode,
    pr.createdDate};


我假设两个都有字符串contactID。如果没有,那么您需要使用一种方法或另一种方法。

关于c# - 加入CSV文件以查询结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12205565/

10-10 07:49