0

有没有一个例子说明Table.Select(Expression)where 表达式可能是这样的:

Expression = "id in (1,2,3,4)"

如果变量中有 id,我有一个列表IdList。表包含所有TS_Idswhere 作为IdList唯一的 id 子集。所以我想要这样的东西

        string IdList = "(1,2,3,4)";
       Table.Select("[ts_id] in IdList");
4

1 回答 1

0

DataTable.Select 方法使用DataColumn.Expression属性。IN 运算符列在 Expression 属性中允许的运算符之间。所以你的代码可以写成

DataRow[] rows = Table.Select("[ts_id] in (" + IdList + ")");

当然,这假设您的 IdList 变量包含由逗号分隔的有效 Id 字符串。就像是

IdList = "1,3,5,6";

如果你想要一个 DataTable 作为返回值,那么你可以写

DataRow[] rows = Table.Select("[ts_id] in (" + IdList + ")");
if(rows.Length > 0)
{
   DataTable subTable = rows.CopyToDataTable();
   ......
}
于 2013-12-03T20:06:16.637 回答