2013-03-11 82 views
0

我試圖檢查DBNull.Value但在這種情況下reader["Preferences"]返回{}在即時窗口(爲什麼?)如果條件檢查DBNull.Value

所以當(string)reader["Preferences"];執行我得到一個類型轉換錯誤

if (reader["Preferences"] == System.DBNull.Value) 
{ 
    preferences = (string)reader["Preferences"]; 
} 
+0

(),而不是這個。它親自處理dbnull值 – 2013-03-11 11:59:13

+0

,我強烈主張使用'reader.ISDBNull(...)' – 2013-03-11 12:15:17

回答

1

您正在嘗試只投了當值DBNull.Value

你應該反轉的if:中

if (reader["Preferences"] != System.DBNull.Value) 
{ 
    preferences = (string)reader["Preferences"]; 
} 
你可以直接您Convert.ToString