私は問題に直面しています。私の場合、新しいレシート番号を作成するために max と + 1 を選択したいと思います。新しいレシートの場合は、以下のコードのように新しい番号が作成されます。ただし、エラーが発生します
オブジェクトを DBNull から他の型にキャストできません
これが私のコードです。
このシステムはPDAで実行されているため、このWebサービスを使用してデータベースを呼び出しています
public string callReceipt(string terminal, ref string msg)
{
try
{
string sql = "Select MAX(ReceiptNo) from ReceiptStore where terminalno ='" + terminal + "'";
Logging.Log.writeLog(sql);
msg = "Success";
int receiptno = Convert.ToInt32(Data.DAL.ExecuteScalar(sql));
if (!(sql is DBNull))
{
return Convert.ToString(receiptno + 1);
}
else
{
int receipt = 100000;
return receipt.ToString();
}
}
catch (Exception e)
{
msg = "Error : " + e.Message.ToString();
Logging.Log.writeLog(msg);
return msg;
}
finally
{
}
}
****** アップデート ******
すべての回答に感謝します。SimpleVar は正しい回答を提供し、私の問題を解決しました。再度、感謝します!