我有一个c#应用程序,用户需要通过第一个表单登录。如果验证返回true,则打开form2
我想通过所有这些表单维护一个单一的连接,使用与表单1中输入的相同的用户凭据。我正在使用ODP.NET连接到oracle11g。
谢谢。
.NET中的Sql连接由连接池管理。所以,如果实例化新的连接对象,它会重用旧的封闭物理连接。
形式1
using(var c = new SqlConnection("connectionstring"))
{
//use connection here
}
形式2
using(var c = new SqlConnection("connectionstring"))
{
//use connecion here
}
form1和form2使用到数据库的相同物理连接
连接池也可用于Oracle Data Provider
或者你可能对实体框架感兴趣
创建一个静态连接字符串类如果您声明了一个具有Sqlconnection属性的静态类,则可以以任何形式或任何其他类直接访问它。这里是类的示例
public static class Connection
{
private static SqlConnection sqlconn;
public static SqlConnection getconnection() {
if (sqlconn==null)
sqlconn = new SqlConnection("Connectionsting.");
return sqlconn;
}
}