谁能帮忙讲一下,winform下多个窗体公用一个连接数据库的方法。

解决方案 »

  1.   

    我是把连接字符串相关的信息存到xml文件中。主Form读取后存到static string里。然后其它Form里就可以调用了。
    如:public static string strConn;
    //ConnStr.xml
      <?xml version="1.0" encoding="utf-8" ?> 
      <Connstr>
      <server>namhyukp4</server> 
      <uid>sa</uid> 
      <pwd /> 
      <database>store</database> 
      </Connstr>
    //主Form(FormStock.cs)
    private void FormStock_Load(object sender, System.EventArgs e)
    {
    XmlDocument doc = new XmlDocument();
    doc.Load("ConnStr.xml");XmlNodeReader reader = new XmlNodeReader(doc);string strServer = null, strDataBase = null, strUid = null, strPwd = null, s = null;
    while(reader.Read())
    {
      switch(reader.NodeType)
      { 
        case XmlNodeType.Element:
          s = reader.Name;
          break;
        case XmlNodeType.Text:
        if(s.Equals("server"))
          strServer = reader.Value;
        else if(s.Equals("database"))
          strDataBase = reader.Value;
        else if(s.Equals("uid"))
          strUid = reader.Value;
        else if(s.Equals("pwd"))
          strPwd = reader.Value;
          break;
     }
    }strConn = "server=" + strServer + ";uid=" + strUid + ";pwd=" + strPwd + ";database=" + strDataBase;
    }//其他Form
    SqlConnection conn = new SqlConnection();
    conn.ConnectionString = FormStock.strConn;
    conn.Open();
    ...
      

  2.   

    可以声明一个新类,在新类里声明一个
    public static string getconntionstring()
    {
    string strcon="server=local;database=temp;uid=sa;pwd=sa"
    return strcon 
    }
     在需要的地方调用就可以了.
      

  3.   

    连接串写入App.config文件不就可以了?
      

  4.   

    把密码写在XML里安全性不好
      

  5.   

    添加app.config文件,并写入到这个配置文件中,连接字符串可以加密,保证安全。