C# 在datatable中搜索特定值

C# 在datatable中搜索特定值,c#,datatable,C#,Datatable,我有两个数据表,我的基本需要是知道一个数据表中的值是否存在于另一个数据表中 我的第一个datatable将包含如下数据(id、名称、单位) 第二个是这样的(id,value)。 值可能是这样的 第一个1-A-b,2-b-c,3-X-d 第二个是1-2,3,5。这里有1和3。我如何使用id找到相应的值。这应该有效 var table = new DataTable(); table.Columns.Add("id", typeof(int)); t

我有两个数据表,我的基本需要是知道一个数据表中的值是否存在于另一个数据表中

我的第一个datatable将包含如下数据(id、名称、单位) 第二个是这样的(id,value)。 值可能是这样的 第一个1-A-b,2-b-c,3-X-d 第二个是1-2,3,5。这里有1和3。我如何使用id找到相应的值。

这应该有效

        var table = new DataTable();

        table.Columns.Add("id", typeof(int));
        table.Columns.Add("name");
        table.Columns.Add("unit");

        var table2 = new DataTable();
        table2.Columns.Add("id", typeof(int));
        table2.Columns.Add("value");

        table.Rows.Add(1, "a Name", "a Unit");
        table.Rows.Add(2, "other", "other");

        table2.Rows.Add(1, "value");
        table2.Rows.Add(4, "other");

        var result = table.AsEnumerable().Join(table2.AsEnumerable(), r1 => r1.Field<int>("id"), r2 => r2.Field<int>("id"),
                                  (r1, r2) => new {Id = r1.Field<int>("id"), Value = r2.Field<string>("value") }).ToList();

        foreach (var r in result)
            Console.WriteLine(r.Id + "|"+ r.Value);
var table=newdatatable();
表.列.添加(“id”,类型(int));
表.列.添加(“名称”);
表.列.添加(“单位”);
var table2=新数据表();
表2.列。添加(“id”,类型(int));
表2.增加列(“价值”);
表.行.添加(1,“名称”、“单位”);
表.行.添加(2,“其他”、“其他”);
表2.行。添加(1,“值”);
表2.行。添加(4,“其他”);
var result=table.AsEnumerable().Join(table2.AsEnumerable(),r1=>r1.Field(“id”),r2=>r2.Field(“id”),
(r1,r2)=>new{Id=r1.Field(“Id”),Value=r2.Field(“Value”)}.ToList();
foreach(结果中的var)
Console.WriteLine(r.Id+“|”+r.Value);

此处指定1,2等。该值将出现在另一个数据表上。因此,我将如何编写select?现在,我从您的问题中没有意识到您想要执行JOIN。请看我的回答,我已经在那里添加了它。。。此行:var result=table.AsEnumerable().Join。。。。