突然想:
在ASP.NET中数据连接是很宝贵的资源,可不可以在GLOABL.asax的application_start里做一个数据连接,而后所有的访问都共用这个连接.不知这样成不成?

解决方案 »

  1.   

    数据库连接最好不要放到这里,再需要的时候打开,用完了就要及时关闭连接,一般的做法是放在web.config文件中
      

  2.   

    同意楼上.我把具体方法写给你吧.
    在web.config文件中的
    <configuration>
    //在此中加入数据库连接代码如下:<appSettings>
    <add key="MyConnectionStr" value="server=richard;database=MyDatabase;uid=sa;pwd=sa;"></add>
    </appSettings></configuration>再在程序中这样定就行了.
    SqlConnection MyConnection=new SqlConnection(System.Configuration.ConfigurationSettings..AppSettings["MyConnectionStr"]);
    就可以了.
    你试试看.
      

  3.   

    同意楼上.我把具体方法写给你吧.
    在web.config文件中的
    <configuration>
    //在此中加入数据库连接代码如下:<appSettings>
    <add key="MyConnectionStr" value="server=richard;database=MyDatabase;uid=sa;pwd=sa;"></add>
    </appSettings></configuration>再在程序中这样定就行了.
    SqlConnection MyConnection=new SqlConnection(System.Configuration.ConfigurationSettings..AppSettings["MyConnectionStr"]);
    就可以了.
    你试试看.
      

  4.   

    LaoDai_Net(『老代.Net』)说得对......这样对资源控制好 点,改动也方便
      

  5.   

    OU一般放在web.config下建立一个..
    <configuration>
         <appSettings>     
           <add key="FGWHConnectionString" value="server=(local)\NetSDK; server=(local);Initial Catalog=warehousemanager;user id=sa; password=sa;"/>       
         </appSettings> 
    <system.web>
      

  6.   

    方法一:
    在web.config文件里添加关键字key是通过<appSettings>标记来实现的,但是appSettings标记通常放在<system.web>.....</system.web>标记外面。例:
    <configration>
        <appSettings>
            <add key="connString1" value="server=localhost;user id=sa;pwd=;database=数据库名字"/>
            <add key="connString2" value="provider=Microsoft.Jet.OleDb.4.0;Data Source=数据库路径"/>
       </appSettings>
       <system.web>
    要在代码中引用这些数据库连接字符串,需要先添加对System.ConFiguration名字空间的引用,在这个名字空间中含有ConfigurationSettings类,其静态方法ConfigurationSettings.AppSettings属性可获取web.config文件中<appSettings>节的设置,读到的值为string型。例如:
    using System.Configuration;string conn1 = ConfigurationSettings.AppSettings["connString1"];
    string conn2 = ConfigurationSettings.AppSettings["connString2"];
    SQLConnection myConn1 = new SQLConnection(conn1);
    OleDbConnection myConn2 = new OleDbConnection(conn2);
    </system.web>
    </configration>方法二:
    在Global文件里中添加
    protected void Session_Start(Object sender, EventArgs e)
    {
      Session["sqlConnectionString"] = "uid=Username;pwd=password;database=MyTest;server=Localhost;Connect Timeout=300";
    }
    在代码中的应用:
    String strConnection=Session["sqlConnectionString"].ToString();
    sqlConnection_1=new SqlConnection(strConnection);
      

  7.   

    个人觉得leiyingw(小雷)的方法二不如将字符串放到Application里面好,如果访误码都多,放Application里面则有很多拷贝了,从资源利用的角度来考虑不可取