第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

對象不能從 DBNull 轉(zhuǎn)換為 C# 中的其他類型異常

對象不能從 DBNull 轉(zhuǎn)換為 C# 中的其他類型異常

C#
蕪湖不蕪 2021-11-14 15:01:14
我正在使用 MySql 數(shù)據(jù)庫,如果我執(zhí)行解決方案,我會在 catch 塊中收到異常,下面是我的代碼MySqlManager dac = new MySqlManager();long value = 0;DbCommand dbCommand = dac.GetStoredProcCommand("Spforgotpassword");dac.AddOutParameter(dbCommand, "p_op_EmailId", DbType.Int32, -1);dac.AddInParameter(dbCommand, "p_p_EmailId", DbType.String, data.Email_Id);dac.AddInParameter(dbCommand, "p_p_Password", DbType.String, Generatehash256(data.Password));dac.AddInParameter(dbCommand, "p_P_EncryptedPassword", DbType.String, Encryption.Encrypt(data.Password));dac.AddInParameter(dbCommand, "p_P_Mode", DbType.String, 102);dac.AddInParameter(dbCommand, "p_IPAddress", DbType.String, data.IPAddress);IDataReader reader = dac.ExecuteReader(dbCommand);if (reader.Read()){    value = reader["result"] == DBNull.Value ? default(long) : Convert.ToInt32(reader["result"]);}dac.CloseConnection(dbCommand, reader);if (Convert.ToBoolean(ConfigurationSettings.AppSettings["EnableEmail"])){    if (Convert.ToInt32(dac.GetParameterValue(dbCommand, "p_op_EmailId")) != -1)    {        Mail.WebMail oWebmail = new Mail.WebMail(dac.GetParameterValue(dbCommand, "p_op_EmailId").ToString());    }}return value;一旦我執(zhí)行這一行,我就會收到異常 --- Object cannot be cast from DBNull to other typesdac.GetParameterValue(dbCommand, "p_op_EmailId")該p_op_EmailId是輸出參數(shù)。
查看完整描述

1 回答

?
白衣非少年

TA貢獻1155條經(jīng)驗 獲得超0個贊

看起來存儲過程將值設(shè)置為p_op_EmailIdto null。所以你不能Int32直接將它轉(zhuǎn)換為。

相反,您可以將其轉(zhuǎn)換為一個可為空的 int,并-1在比較之前將其合并:

(dac.GetParameterValue(dbCommand, "p_op_EmailId") as int? ?? -1) != -1


查看完整回答
反對 回復(fù) 2021-11-14
  • 1 回答
  • 0 關(guān)注
  • 475 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號