打开数据库的类:
public class CCUtility
{
public CCUtility(object parent)
{
//
// TODO: 在此处添加构造函数逻辑
//
SQLOpen();
}
public SqlConnection Connection;
public void SQLOpen()
{
SqlConnection Connection=new SqlConnection();
Connection.ConnectionString="Data Source=tony\\tony;Integrated Security=SSPI;Initial Catalog=Northwind;";
Connection.Open();
}
public void SQLClose()
{
if(Connection!=null)
Connection.Close();
} }
调用的程序:
SqlCommand cmd=new SqlCommand("select firstname from employees",ccu.Connection);
SqlDataReader sa;
ccu.SQLOpen();
sa=cmd.ExecuteReader();
错误提示:
ExecuteReader: Connection 属性尚未初始化。
public class CCUtility
{
public CCUtility(object parent)
{
//
// TODO: 在此处添加构造函数逻辑
//
SQLOpen();
}
public SqlConnection Connection;
public void SQLOpen()
{
SqlConnection Connection=new SqlConnection();
Connection.ConnectionString="Data Source=tony\\tony;Integrated Security=SSPI;Initial Catalog=Northwind;";
Connection.Open();
}
public void SQLClose()
{
if(Connection!=null)
Connection.Close();
} }
调用的程序:
SqlCommand cmd=new SqlCommand("select firstname from employees",ccu.Connection);
SqlDataReader sa;
ccu.SQLOpen();
sa=cmd.ExecuteReader();
错误提示:
ExecuteReader: Connection 属性尚未初始化。
public void SQLOpen()
{
this.Connection=new SqlConnection();
this.Connection.ConnectionString="Data Source=tony\\tony;Integrated Security=SSPI;Initial Catalog=Northwind;";
this.Connection.Open();
}
成员函数中使用了局部变量而不是public成员变量,自然是错误了
把 “ SqlConnection Connection=new SqlConnection(); “
改成 “ Connection=new SqlConnection(); "
{
public CCUtility(object parent)
{
//
// TODO: 在此处添加构造函数逻辑
//
SQLOpen();
}
public SqlConnection Connection;
public void SQLOpen()
{
Connection=new SqlConnection(); Connection.ConnectionString="Data Source=tony\\tony;Integrated Security=SSPI;Initial Catalog=Northwind;";
Connection.Open();
}
public void SQLClose()
{
if(Connection!=null)
Connection.Close();
} }因为你外面用的是public 的connection,而在方法内你又声明了一个同名的connection,所以
public的失效了。
所以public 的connection 没有被实例化。
但是还有个问题,请再帮忙一下
if(sa.HasRows)
{
Session["loginid"]=sa.GetSqlString(0);
LMessage.Text=Session["loginid"]+"登录成功!";
}
错误提示:
在没有任何数据时进行无效的读取尝试。