制作数据行Select()查询

时间:2012-08-30 11:33:02

标签: c# asp.net

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

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

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

我想只选择那些没有'0'作为其Parent的行。我知道sql我没有得到select函数的工作原理。

2 个答案:

答案 0 :(得分:4)

尝试使用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的列表。

编辑:

我看到你正在尝试选择 - 在哪里可以选择并做你想做的事情。这会根据bool条件进行过滤,因此您可以在ParentID大于x或小于等的情况下执行此操作。

我希望你觉得这很有用。

答案 1 :(得分:1)

试试这个::

DataRow[] dt = dt.Select("Parent != '0'");
dt[0][Your Column Name] = your value;