2011-10-07 67 views
1

我正在將應用程序的數據庫從Access轉換爲MS SQL Server,並遇到了一行代碼,該代碼檢查從數據庫中檢索到的項是否爲空。爲什麼我的比較爲null,包含在System.Data.DataRow對象中的值失敗?

它在本質上是這樣的:

if (System.Data.DataRow["foo"] == null) 
{ 
    //do something 
} 

我知道在列「foo」的值爲空,但檢查失敗。它適用於Access數據庫,但不適用於MS SQL Server。我明白爲什麼。該調用返回「{}」而不是null。爲什麼?

回答

2

嘗試檢查對DbNull.Value而不是null

1

嘗試:

if (System.Data.DataRow["foo"].IsDBNull) 
+0

+1,但檢查拼寫。 –

+0

@MarceloCantos:謝謝:) – Marco

+0

該屬性不存在。 – raven