[英]Unable to cast object of type
我想獲得最大數量
所以我做了這個代碼
public int autoIncrement()
{
int no = 0;
odbcCon.OpenCon();
SqlCommand cmd = new SqlCommand("SELECT MAX (CustomerCode) FROM TBLM_CUSTOMER",odbcCon.MainCon);
SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
if (!dr.IsDBNull(0)) {
no = Convert.ToInt32(dr);
}
}
dr.Close();
return no;
}
但
no = Convert.ToInt32(dr);
說
無法將類型為“System.Data.SqlClient.SqlDataReader”的對象強制轉換為“System.IConvertible”。
我怎么能解決這個問題? 請告訴我
您正在嘗試將數據讀取器轉換為整數。
試試這個:
if (!dr.IsDBNull(0)) {
no = dr.GetInt32(0);
}
您需要為DataReader
指定索引0
:
no = Convert.ToInt32(dr[0]);
你需要給索引:
no = Convert.ToInt32(dr[0]);
嘗試獲取GetSqlInt32屬性
no = dr.GetSqlInt32(0);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.