1

私は全体として C# と OO の初心者です。この質問がばかげているように聞こえる場合は、ご容赦ください。

私がやりたいことは、CollectionsDataSet という名前の DataSet の CD という名前の DataTable にある CDNumber という名前のフィールドの返されたオブジェクトを取得してループすることです。

CD のすべての行に値があるわけではありません。一部は null です。

だから私はこのLINQクエリを書きます

Var CDNumbers =
    From CDNumber in CollectionsDataSet.CD.AsEnumerable()
    Where CDNumber.Field<int>("CDNumber") > 0
    Select CDNumber.Field<int>("CDNumber") > 0
    ;

For each (CDNumberRow in CDNumbers) {
    If (CDNumberRow > 0) {
        MessageBox.Show(CDNumberRow.ToString());
    }
}

問題は、3 つの非 null データのうち 2 つしか出力されないことです。

4

1 に答える 1

0

以下で試してください

Var CDNumbers =
    From CDNumber in CollectionsDataSet.CD.AsEnumerable()
    Where CDNumber.Field<int?>("CDNumber") != null
    Select CDNumber.Field<int?>("CDNumber");
于 2013-06-09T09:54:50.610 に答える