另写一个config.cs的类
public class config
{
public string connstr="server=192.168.0.1;database=testdb;uid=sa;pwd=";
public config()
{
//
// TODO: 在此处添加构造函数逻辑
//
dbconn=new SqlConnection(connstr)
}
public void open()
{
dbconn.Open();
}
public void close()
{
dbconn.Close();
}
}
public class config
{
public string connstr="server=192.168.0.1;database=testdb;uid=sa;pwd=";
public config()
{
//
// TODO: 在此处添加构造函数逻辑
//
dbconn=new SqlConnection(connstr)
}
public void open()
{
dbconn.Open();
}
public void close()
{
dbconn.Close();
}
}
SqlConnection连接字符串写在web.config中,然后在组件中调用;每个web aspx都可以创建该组件的实例进行数据处理。
SqlConnection连接字符串写在web.config中,然后在组件中调用;每个web aspx都可以创建该组件的实例进行数据处理。
这个父类继承System.Web.UI.Page(也就是每个窗体类默认继承的空间)
然后在这个类里面定义你的所有的公共对象
然后把所有窗体继承这个类
例如:
可以在父类(假如叫ClassCn)里面这样写;public SqlConnection getCn()
{
SqlConnection objCn=new SqlConnection(连接串);
objCn.open();
return objCn;
}然后在页面里面可以这样写
ClassCn classcn=new ClassCn();
SqlConnection objCn=classcn.getCn();
这样得到的objCn就已经连接好了对于web程序,也只能做到这一步了
因为web程序没有状态的
所以没有真正意义上的全局变量
页面加载完毕了
服务器端的对象就都disspose了
config conn=new config();
conn.open();//打开数据连接
conn.close();//关闭数据连接
有点糊涂了
既然继承了,也就不用实例化了
直接调用父类的方法就行了
ClassCn classcn=new ClassCn();
SqlConnection objCn=classcn.getCn();
改成
SqlConnection objCn=this.getCn();
SqlConnection objCn=new SqlConnection(连接串);
objCn.open();
Session["cn"]=objCn;
使用时:
SqlConnection objCn = (SqlConnection)Session["cn"];但我从来不这么用
public class CAccessDB
{
private SqlConnection sqlConnection;
public CAccessDB()
{
string myConnectionString = "data source=RAINFISH;initial catalog=CarFix;persist security info=False;user id=sa;workstation id=RAINFISH;packet size=4096";
sqlConnection = new SqlConnection(myConnectionString);
} public SqlConnection getConnection()
{
return sqlConnection;
}
}以上就是我现在在用的.