ASP.NET 例程完全代码版(5)——通过web.config配置数据库连接池
2006-04-04 13:49
337 查看
下面讲述在VS2005中如何使用web.config配置文件,进行数据库的连接操作,并启用SQL Server数据库的连接池,相信对于已经熟悉VS2003的、刚进入05的环境的朋友会有些帮助。
首先,在05中,默认情况下,并没有自动为应用程序生成web.config,当第一次运行应用程序的时候,会出现Debuging Not Enabled的提示,点击OK按钮,会为应用程序生成一个web.config配置文件。在<configuration>元素中,已经有了如下两个节点元素:
<appSettings/>
<connectionStrings/>
03中,数据库的连接配置是在<appSettings/>中通过add key=" connStr " value = " "来指定的;05中,"connectionStrings 元素为 ASP.NET 应用程序和 ASP.NET 功能指定数据库连接字符串(名称/值对的形式)的集合。在以前的 ASP.NET 版本中,连接字符串存储在 appSettings 中。在 ASP.NET 2.0 中,如会话、成员资格、个性化设置和角色管理器等功能均依赖于存储在 connectionStrings 元素中的连接字符串。您还可以使用 connectionStrings 元素来存储您自己的应用程序的连接字符串。"——SDK。
可以将<connectionStrings/>用下面的代码替换:
<connectionStrings>
<add
name="CONNSTRING"
connectionString="data source =localhost;uid =sa;pwd=;database=Book;pooling=true"/> //注意:pooling也可以在后面通过代码指定
</connectionStrings> 应用程序中这样读取即可:
private readonly string SQLCONNECTIONSTRING = ConfigurationManager.ConnectionStrings["CONNSTRING"].ConnectionString;
下面是测试的例子,当然基本的ADO.NET连接数据库的知识要知道。
建立一个DbPooling.aspx,代码如下: using System;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls; public partial class DbPooling : System.Web.UI.Page
{
private readonly string SQLCONNECTIONSTRING = ConfigurationManager.ConnectionStrings["CONNSTRING"].ConnectionString;
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
ConnectionObject();
DataSet ds = null;
for (int i = 0; i < 1000; i++)
{
ds = GetCustomers(true); //true——配置连接池
}
GridView1.DataSource = ds; //03中的DataGrid现在是GridView
GridView1.DataBind();
}
}
private DataSet GetCustomers(bool nStartPooling)
{
string connStr = SQLCONNECTIONSTRING + "Pooling=" + nStartPooling.ToString(); //通过传递的bool指定是否配置连接池
Label1.Text = connStr;
SqlConnection conn = new SqlConnection(connStr);
string cmdText = "SELECT Top 10 * FROM Book";
SqlDataAdapter da = new SqlDataAdapter(cmdText, conn);
conn.Open();
DataSet ds = new DataSet();
da.Fill(ds);
conn.Close();
return ds;
} private void ConnectionObject()
{
SqlConnection conn = new SqlConnection(SQLCONNECTIONSTRING);
string cmdText = "SELECT Count(*) as BookCount FROM Book";
SqlCommand comm = new SqlCommand(cmdText, conn);
conn.Open(); int result = (int)comm.ExecuteScalar();
Response.Write("Book表的记录数为:" + result.ToString());
Response.Write("<br>SQL Server数据库的连接状态为:" + conn.State.ToString());
Response.Write("<br>SQL Server数据库连接的通信包的大小为:" + conn.PacketSize.ToString());
Response.Write("<br>SQL Server数据库连接的数据库为:" + conn.Database.ToString());
Response.Write("<br>SQL Server数据库连接的工作站点:" + conn.WorkstationId.ToString());
conn.Close();
Response.Write("<br>SQL Server数据库的连接状态:" + conn.State.ToString()); }
}
对于刚刚开始熟悉 VS2005 的朋友来说,很多细节的东西要与03区别,当然,查一下SDK很容易找到异同和解决方法,本文小例针对在05中初次配置web.config遇到的小麻烦做一总结,详细的 configuration 操作可以参考SDK了,呵呵。 阅读更多
首先,在05中,默认情况下,并没有自动为应用程序生成web.config,当第一次运行应用程序的时候,会出现Debuging Not Enabled的提示,点击OK按钮,会为应用程序生成一个web.config配置文件。在<configuration>元素中,已经有了如下两个节点元素:
<appSettings/>
<connectionStrings/>
03中,数据库的连接配置是在<appSettings/>中通过add key=" connStr " value = " "来指定的;05中,"connectionStrings 元素为 ASP.NET 应用程序和 ASP.NET 功能指定数据库连接字符串(名称/值对的形式)的集合。在以前的 ASP.NET 版本中,连接字符串存储在 appSettings 中。在 ASP.NET 2.0 中,如会话、成员资格、个性化设置和角色管理器等功能均依赖于存储在 connectionStrings 元素中的连接字符串。您还可以使用 connectionStrings 元素来存储您自己的应用程序的连接字符串。"——SDK。
可以将<connectionStrings/>用下面的代码替换:
<connectionStrings>
<add
name="CONNSTRING"
connectionString="data source =localhost;uid =sa;pwd=;database=Book;pooling=true"/> //注意:pooling也可以在后面通过代码指定
</connectionStrings> 应用程序中这样读取即可:
private readonly string SQLCONNECTIONSTRING = ConfigurationManager.ConnectionStrings["CONNSTRING"].ConnectionString;
下面是测试的例子,当然基本的ADO.NET连接数据库的知识要知道。
建立一个DbPooling.aspx,代码如下: using System;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls; public partial class DbPooling : System.Web.UI.Page
{
private readonly string SQLCONNECTIONSTRING = ConfigurationManager.ConnectionStrings["CONNSTRING"].ConnectionString;
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
ConnectionObject();
DataSet ds = null;
for (int i = 0; i < 1000; i++)
{
ds = GetCustomers(true); //true——配置连接池
}
GridView1.DataSource = ds; //03中的DataGrid现在是GridView
GridView1.DataBind();
}
}
private DataSet GetCustomers(bool nStartPooling)
{
string connStr = SQLCONNECTIONSTRING + "Pooling=" + nStartPooling.ToString(); //通过传递的bool指定是否配置连接池
Label1.Text = connStr;
SqlConnection conn = new SqlConnection(connStr);
string cmdText = "SELECT Top 10 * FROM Book";
SqlDataAdapter da = new SqlDataAdapter(cmdText, conn);
conn.Open();
DataSet ds = new DataSet();
da.Fill(ds);
conn.Close();
return ds;
} private void ConnectionObject()
{
SqlConnection conn = new SqlConnection(SQLCONNECTIONSTRING);
string cmdText = "SELECT Count(*) as BookCount FROM Book";
SqlCommand comm = new SqlCommand(cmdText, conn);
conn.Open(); int result = (int)comm.ExecuteScalar();
Response.Write("Book表的记录数为:" + result.ToString());
Response.Write("<br>SQL Server数据库的连接状态为:" + conn.State.ToString());
Response.Write("<br>SQL Server数据库连接的通信包的大小为:" + conn.PacketSize.ToString());
Response.Write("<br>SQL Server数据库连接的数据库为:" + conn.Database.ToString());
Response.Write("<br>SQL Server数据库连接的工作站点:" + conn.WorkstationId.ToString());
conn.Close();
Response.Write("<br>SQL Server数据库的连接状态:" + conn.State.ToString()); }
}
对于刚刚开始熟悉 VS2005 的朋友来说,很多细节的东西要与03区别,当然,查一下SDK很容易找到异同和解决方法,本文小例针对在05中初次配置web.config遇到的小麻烦做一总结,详细的 configuration 操作可以参考SDK了,呵呵。 阅读更多
相关文章推荐
- ASP.NET 例程完全代码版(5)——通过web.config配置数据库连接池
- ASP.NET项目中的web.config文件里配置数据库连接并在程序代码中获取连接字符串
- ASP.NET通过配置Web.config文件提高手动绑定数据库效率的一个简单方法,不用每次手动连接数据库地址,或者数据库地址变更时只改一处即可。
- 在ASP.NET项目中的web.config文件里配置数据库连接并在程序代码中获取连接字符串
- 在ASP.NET项目中的web.config文件里配置数据库连接并在程序代码中获取连接字符串
- ASP.NET 例程完全代码版(7)——2.0中实现自配置的成员角色管理库
- ASP.NET中使用web.config配置web应用程序中的数据库连接
- ASP.NET配置(web.config)无法连接到SQL Server 数据库的解决方法
- asp.net连接数据库web.config配置
- ASP.NET中使用web.config配置数据库连接
- ASP.NET实现增删改查等功能(Access版)系统之一 -前台及数据库webconfig配置
- ASP.NET web.config中数据库连接字符串connectionStrings节的配置方法
- asp.net连接sql2005,cs文件里直接书写的代码,纯手工操作,不在web.config里面进行配置。
- ASP.NET中使用web.config配置web应用程序中的数据库连接
- 在ASP.NET中web.config配置数据库
- asp.net项目中通过Web.config配置文件及文件夹的访问权限!
- asp.net数据库连接web.config配置
- ASP.NET中使用web.config配置数据库连接
- Asp.net中Web.config连接字符串及配置数据库sqlserver 浮兮vip解析
- asp.net项目中通过Web.config配置文件及文件夹的访问权限!