Windows窗体应用程序c#:添加全局变量
本文关键字:添加 全局变量 窗体 应用程序 Windows | 更新日期: 2023-09-27 18:17:48
大家好!我试图使一个windows窗体应用程序,需要连接到我们的数据库之一。
我可以用System.Data.Odbc对象连接到数据库。
我在本地函数中创建OdbcConnection对象,打开它,读取数据并关闭它没有问题。然而,我的表单需要发送许多查询,因此我想避免每次查询数据库时打开和关闭连接。
现在,我想采取的方法是声明一个OdbcConnection对象作为我的Forms类的字段,然后在InitializeComponent()方法中打开它,让数据库连接在表单期间打开,并仅在表单关闭时关闭它。
但这是一个问题,因为Visual Studio不想让我修改InitializeComponent()中的任何东西,所有的东西都必须由Form设计代表我创建,所以我不能打开OdbcConnection自己。
完成这个的干净的方法是什么?
谢谢
为什么不直接写
public partial class credentials : Form
{
private Connection con;
public credentials()
{
InitializeComponent();
con = new Connection();
}
}
如果您使用的是Command
对象,最好自己打开和关闭连接。如果使用DataAdapter
,可以让适配器控制连接状态。
你应该知道共享连接不是一个好主意。ADO。如果需要,Net将使用连接池来完成,我建议您手动打开和关闭连接。
但是根据你的要求,这里是你可以使用的代码:
public class Form1:Form
{
public Form1()
{
InitiallizeComponent();
}
private OdbcConnection connection;
//If you want to open and close connection automatically uncomment commented codes
//Then you don't need to open and close connection manually
protected override void OnLoad(EventArgs e)
{
connection= new OdbcConnection("your connection string here");
//this.Connection.Open();
base.OnLoad();
}
protected override void OnClosing(CancelEventArgs e)
{
//this.Connection.Close();
this.Connection.Dispose();
base.OnClosing(e);
}
}