在 winform 中,我试图将返回的数据集值与定义的值进行比较,但出现以下错误。
在下面的代码中,我将字符串从列表框传递给 GetStock 方法
public bool checkStock()
{
foreach (var listBoxItem in listBox1.Items)
{
if (Convert.ToInt32(GetStock(listBoxItem.ToString())) == 0)
{
MessageBox.Show(listBoxItem.ToString() + " not in Stock!. Please delete the item before proceeding");
return false;
}
}
return true;
}
GetStock() 的代码
public DataSet GetStock(string product)
{
DataSet dataSet = new DataSet();
OleDbConnection oleConn = new OleDbConnection(connString);
try
{
oleConn.Open();
string sql = "SELECT [Quantity] FROM [Product] WHERE [Product Name]='" + product + "'";
OleDbDataAdapter dataAdapter = new OleDbDataAdapter(sql, oleConn);
dataAdapter.Fill(dataSet, "Product");
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
finally
{
oleConn.Close();
}
if (dataSet.Tables["Product"].Rows.Count <= 0)
return null;
return dataSet;
}
}
}
在数据库中,“数量”是字符串格式。