源表.选择提供 2 列数据不起作用

本文关键字:数据 不起作用 选择 源表 | 更新日期: 2023-09-27 18:33:15

我创建了一个方法,该方法采用源数据表、目标数据表、列名和值。仅复制与列值匹配的数据行。这有效,但现在我需要给出 2 列名称和 2 个值,但它不起作用。

这是我到目前为止的代码:

public void SortDataByType(DataTable SourceTable, DataTable ReturnedResult, String Custnum, string Columnname)
{
        var detailedRows = SourceTable.Select(String.Format(Columnname + "={0}", Custnum));
        foreach (var detailRow in detailedRows)
        {
            ReturnedResult.Rows.Add(detailRow.ItemArray);
        }
    }

以上工作正常。

下面的代码不起作用。

 public void SortDataByType(DataTable SourceTable, DataTable ReturnedResult, String Custnum,   String District , string Columnname,string Columnname2)
 {
     var detailedRows = SourceTable.Select(String.Format(Columnname + "={0}" , Columnname2+"={1}",Custnum,District));
     foreach (var detailRow in detailedRows)
     {
            ReturnedResult.Rows.Add(detailRow.ItemArray);
     }
}

源表.选择提供 2 列数据不起作用

DataTable.Select 可以使用 "AND" 或 "OR" 语句组合条件。试试这个:

var detailedRows = SourceTable.Select(String.Format(Columnname + " = {0}" + " And " + Columnname2 + " = {1}", Custnum, District));