有几个返回DataTable对象的查询需要执行。为了加快开发速度,我创建了一个私有方法,该方法应以查询字符串作为参数返回dataset。
方法如下:
private DataTable getDataTable(string query)
{
DataTable dt = new DataTable();
SqlDataAdapter DA = new SqlDataAdapter(query, conn);
try
{
iStatusIndicator.SetBusy(true);
iStatusIndicator.SetStatus("executing query" + query);
DA.Fill(dt);
}
catch (Exception ex)
{
...
}
iStatusIndicator.SetBusy(false);
iStatusIndicator.SetStatus("");
return dt;
}该过程不会抛出异常,但DataTable dt始终为空。我尝试在sql命令提示符中直接运行查询字符串,但它按预期返回数据,因此我不知道问题出在哪里。
如果你们中的任何人解释了原因,提出了修复方法或通过接收查询字符串返回DataTables的更好方法,我将非常感谢。
谢谢
发布于 2010-09-25 06:01:50
private static DataSet SelectRows(DataSet dataset,
string connectionString,string queryString)
{
using (SqlConnection connection =
new SqlConnection(connectionString))
{
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = new SqlCommand(
queryString, connection);
adapter.Fill(dataset);
return dataset;
}
}发布于 2010-09-25 07:10:42
你的catch块里有什么?有没有可能有什么东西可以返回或退出sub?这似乎是我能看到此函数返回NOthing (即.您的函数永远不会到达"return dt;“行
https://stackoverflow.com/questions/3791298
复制相似问题