投它繼續出現此錯誤"Object cannot be cast from DBNull to other types."
上totaldevotos += Convert.ToInt32(dr["Classificacao"])
,Asp.net自動遞增的數據(來自數據庫)給一個變量 - 錯誤對象不能從DBNull的
我嘗試到來自對象轉換數據庫"Classificacao"
變成了Integer
,(它在數據庫上是一個Int字段),有什麼想法?
string sql = "SELECT * from Users LEFT JOIN Cocktails on Users.ID_Utilizador=Cocktails.ID_utilizador1 LEFT JOIN Rating on Cocktails.ID_cocktail=Rating.ID_cocktail WHERE Cocktails.ID_utilizador1=Users.ID_utilizador AND Users.ID_utilizador=" + ID;
int totaldevotos = 0;
SqlDataReader dr = con.query(sql);
while (dr.Read())
{
if (dr.HasRows)
{
totaldevotos += Convert.ToInt32(dr["Classificacao"]);
}
}
無論是否the'dr [「Classificacao」]爲空使用string.IsNullOrEmpty'功能或我建議改變你的SQL語句並在WHERE子句中添加'和Classificacao IS NOT NULL' – MethodMan
嘗試這樣的事情。 。 'totaldevotos + = dr [「Classificacao」]。IsDbNull? 0:Convert.ToInt32(dr [「Classificacao」]);' – MethodMan