ASP.NET 例程完全代码版(5)——通过web.config配置数据库连接池

本文涉及的产品
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
云数据库 RDS SQL Server,基础系列 2核4GB
简介:
下面讲述在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了,呵呵。


本文转自 august 51CTO博客,原文链接:http://blog.51cto.com/august/6971,如需转载请自行联系原作者
相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS&nbsp;SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/sqlserver
相关文章
|
1月前
|
开发框架 前端开发 JavaScript
ASP.NET Web Pages - 教程
ASP.NET Web Pages 是一种用于创建动态网页的开发模式,采用HTML、CSS、JavaScript 和服务器脚本。本教程聚焦于Web Pages,介绍如何使用Razor语法结合服务器端代码与前端技术,以及利用WebMatrix工具进行开发。适合初学者入门ASP.NET。
|
1月前
|
开发框架 .NET PHP
ASP.NET Web Pages - 添加 Razor 代码
ASP.NET Web Pages 使用 Razor 标记添加服务器端代码,支持 C# 和 Visual Basic。Razor 语法简洁易学,类似于 ASP 和 PHP。例如,在网页中加入 `@DateTime.Now` 可以实时显示当前时间。
|
2月前
|
数据库连接 Linux Shell
Linux下ODBC与 南大通用GBase 8s数据库的无缝连接配置指南
本文详细介绍在Linux系统下配置GBase 8s数据库ODBC的过程,涵盖环境变量设置、ODBC配置文件编辑及连接测试等步骤。首先配置数据库环境变量如GBASEDBTDIR、PATH等,接着修改odbcinst.ini和odbc.ini文件,指定驱动路径、数据库名称等信息,最后通过catalog.c工具或isql命令验证ODBC连接是否成功。
|
2月前
|
消息中间件 资源调度 关系型数据库
如何在Flink on YARN环境中配置Debezium CDC 3.0,以实现实时捕获数据库变更事件并将其传输到Flink进行处理
本文介绍了如何在Flink on YARN环境中配置Debezium CDC 3.0,以实现实时捕获数据库变更事件并将其传输到Flink进行处理。主要内容包括安装Debezium、配置Kafka Connect、创建Flink任务以及启动任务的具体步骤,为构建实时数据管道提供了详细指导。
183 9
|
2月前
|
安全 Nacos 数据库
Nacos是一款流行的微服务注册与配置中心,但直接暴露在公网中可能导致非法访问和数据库篡改
Nacos是一款流行的微服务注册与配置中心,但直接暴露在公网中可能导致非法访问和数据库篡改。本文详细探讨了这一问题的原因及解决方案,包括限制公网访问、使用HTTPS、强化数据库安全、启用访问控制、监控和审计等步骤,帮助开发者确保服务的安全运行。
114 3
|
2月前
|
PHP 数据库 数据安全/隐私保护
布谷直播源码部署服务器关于数据库配置的详细说明
布谷直播系统源码搭建部署时数据库配置明细!
|
1月前
|
监控 前端开发 API
一款基于 .NET MVC 框架开发、功能全面的MES系统
一款基于 .NET MVC 框架开发、功能全面的MES系统
|
4月前
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
59 7
|
4月前
|
存储 开发框架 前端开发
ASP.NET MVC 迅速集成 SignalR
ASP.NET MVC 迅速集成 SignalR
108 0