私はこのようなコードを持っています:
DataSet QtyDS = null;
. . .
QtyDS = GetAllUPCDSDRecords(txtUPC.Text);
...それは「テーブル0が見つかりません」で爆発しています
それを防ぐために、私は次のことを試みましたが、まったく役に立ちませんでした。データセットの最初のテーブルにアクセスしようとすると、まだそのerrmsgが表示されます。
1)
if (null != QtyDS)
2)
string table0 = QtyDS.Tables[0].ToString();
if (!table0.Equals(string.Empty))
3)
if (null != QtyDS.Tables[0])
エラーメッセージを回避するために、クエリがデータセットを返しているかどうかを安全に判断するにはどうすればよいですか?
アップデート
public DataSet getAllUPCDSDRecords(string upc)
{
string query = string.Format(
"SELECT tyger_id as tyger, upc_source as UPC, description as Descrip, unit_qty as Qty, "+
"department as Dept, vendor_id as Ven, upc_pack_size as UPCPK, pack_size as PKSize, "+
"unit_cost as Cst, unit_list as Lst "+
"FROM {0} WHERE upc_source = {1}", tablename, upc);
return dbconn.getDataSet(query);
}
public DataSet getDataSet( string dynSQL )
{
checkConnection();
SqlCeDataAdapter oDA = new SqlCeDataAdapter( dynSQL, objCon );
DataSet oDS = new DataSet( "Command" );
try
{
oDA.Fill( oDS );
}
catch
{
//SSCS.ExceptionHandler(ex, "DBConnection.getDataSet");
}
return( oDS );
} // getDataSet