問題は、フィールドとして ID と親 ID を含むデータ行配列があることです。
次のコードを使用しましたが、正しい値が返されました。
datarow [] dt = datarow.select(" Parent = '0' ");
親として '0' を持たない行のみを選択したいのですが、SQL で選択関数がどのように機能するかわかりません。
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);
0 に等しい親 ID と 0 に等しくないリストを持つデータ行のリストを取得します。
編集:
Select - Where は代替手段であり、やりたいことを実行しようとしているようです。これは bool 条件に基づいてフィルタリングするため、ParentID が x よりも大きいか小さいかなどを指定できます。
これが役に立つことを願っています。
これを試して ::
DataRow[] dt = dt.Select("Parent != '0'");
dt[0][Your Column Name] = your value;