为什么sqldatareader没有数据
我使用一个C#数据库类读取数据库,首先数据库里面有数据并且读取条件没有问题
dbopt opt= new dbopt();
TreeNode tr = this.treeView1.SelectedNode;
SqlDataReader dr;
string PatternTypeID;
string sql;
sql = "select id from Ocean_PatternTypeTree where PatternTypeID = '2000'";
SqlParameter[] myparm = { new SqlParameter("@PatternTypeID", SqlDbType.VarChar, 50) };
myparm[0].Value = this.treeView1.SelectedNode.ToString();
dr = opt.ExecuteReader(sql);
common.ShowInfo(dr[0].ToString());
总是说在"dr[0].ToString(" 这个地方"在没有任何数据时进行无效的读取尝试。" 这是怎么回事?
数据库查询函数
public SqlDataReader ExecuteReader(string strSQL)
{
SqlConnection connection = new SqlConnection(connectionString);
SqlCommand cmd = new SqlCommand(strSQL,connection);
try
{
connection.Open();
SqlDataReader myReader = cmd.ExecuteReader();
return myReader;
}
catch(System.Data.SqlClient.SqlException e)
{
throw new Exception(e.Message);
}
}