簡體   English   中英

無法轉換類型的對象

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM