我收到以下错误消息:
System.InvalidOperationException:ExecuteReader需要一个开放且可用的连接。连接的当前状态为Closed。
这是我的代码:
public IDataReader ExecuteReader()
{
IDataReader reader = null;
try
{
this.Open();
reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
}
catch (Exception ex)
{
if (handleErrors)
strLastError = ex.Message;
else
throw;
}
catch
{
throw;
}
return reader;
}
有谁知道如何解决这个问题?
答案 0 :(得分:1)
尚未打开SQLCommand附加到的Connection对象。您必须先打开连接才能进行查询。
这样的事情:
private static void OpenSqlConnection(string connectionString)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
var cmd = connection.CreateCommand();
// Do your command access here.
}
}