質問

タイプのオブジェクトを持っています:

dynamic {System.DBNull}
.

私はそれをチェックしたい:

if (myObject!= null || myObject!= DBNull.Value)
{
   MessageBox.Show("Oh hi");
}
.

しかしMessageBoxは常に現れます。何が間違っていますか?

役に立ちましたか?

解決

この式は常に真

です。
myObject != null || myObject != DBNull.Value
.

myObjectは、nullDBNull.Valueを同時に使用できないためです。Fixを修正するために||&&に置き換えます。

他のヒント

このコードを試してみてください

if(myObject != DBNull.Value)
{
   MessageBox.Show("Oh hi");
}
.

または

if(myObject != null && myObject != DBNull.Value)
{
   MessageBox.Show("Oh hi");
}
.

DBNULLを確認する機能もあります。

if(myObject != null && !Convert.IsDBNull(myObject))
{
   MessageBox.Show("Oh hi");
}
.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top