0

问题是我有一个数据行数组,其中包含 ID 和父 ID 作为其字段。

我使用了以下代码,它返回了正确的值,

datarow [] dt = datarow.select("  Parent = '0' ");

我只想选择那些没有“0”作为其父项的行。我知道 sql 我不知道选择函数是如何工作的。

4

2 回答 2

5

尝试使用 LINQ - 这是一个使用示例,我认为这就是您想要的:

  DataTable dt = new DataTable("Example");
  dt.Columns.Add("ID", typeof(int));
  dt.Columns.Add("ParentID", typeof(int));
  dt.Rows.Add(1, 0);
  dt.Rows.Add(1, 1);

  var equal0 = dt.Rows.Cast<DataRow>().Where(x => x.Field<int>("ParentID") == 0);
  var notEqual0 = dt.Rows.Cast<DataRow>().Where(x => x.Field<int>("ParentID") != 0);

你得到一个数据行列表,其父 id 等于 0 和一个不等于 0 的列表。

编辑:

我看到您正在尝试 Select - Where is an alternative and do you want to do。此过滤器基于布尔条件,因此您可以在 ParentID 大于 x 或小于等的情况下进行操作。

希望这个对你有帮助。

于 2012-08-30T11:56:12.270 回答
1

试试这个 ::

DataRow[] dt = dt.Select("Parent != '0'");
dt[0][Your Column Name] = your value;
于 2012-08-30T11:51:03.780 回答