0

System.Int32.AllowDBNULL = trueアプリケーションで型指定されたデータセットを使用しており、NULLVALUE = 例外をスローし、デフォルト値 = 1の 2 つの列を持つデータテーブルがあります。コードでデータテーブルのこのプロパティを次のように使用しています。

 if (rr.ForenameStatus != -1 && rr.ForenameStatus == 0)
{

}

しかし、私はこのエラーが発生しています:

テーブル 'Registrant' の列 'ForenameStatus' の値は DBNull です。

データセットのプロパティNULLVALUEで列を空に変更しようとしましたが、エラーが発生しました:NULL

プロパティ値が無効です

私はこれを使ってみました:

 if (rr.ForenameStatus != System.DBNull.Value && rr.ForenameStatus == 0)
                        {

                        }

しかし、演算子 != は int および dbnull のオペランドには適用できません

これに対する解決策を教えてください。

4

2 に答える 2

0

AllowDBNULL = true を設定し、IsForenameStatusNull メソッドを呼び出して NULL 値をチェックします。

于 2013-03-12T07:19:55.083 に答える
0

これを試して:

if (rr.ForenameStatus.ToString()!="" && rr.ForenameStatus == 0)
{

}

これは代替手段です。int 値を文字列に変換し、空の文字列と比較して null を識別することができます。

于 2013-03-12T07:48:46.983 に答える