简介微软发布的Data Access Application Block

原创 2011年01月10日 10:13:00

为了方便的访问数据,微软自己封装了一个数据访问模块, 即Data Access Application Block. 通过它,我们用来访问数据库的编码量大大减少了. 这样的代码既有效率,又减少了出现错误的几率,其益处是可见的. 下面举两个例子比较一下

1. 使用一般的sql语句进行控件绑定, 常规代码如下:

 1//Create the connection and sql to be executed
 2string strConnTxt = "Server=(local);Database=Northwind;Integrated Security=True;";
 3string strSql = "select * from Products where categoryid = 1"
 4
 5//Create and open the connection object
 6SqlConnection objConn = new SqlConnection(strConnTxt);
 7objConn.Open();
 8
 9//Create the connamd object
10SqlCommand objCmd = new SqlCommand(strSql, objConn);
11objCmd.CommandType = CommandType.Text;
12
13//databind the datagrid by calling the ExecuteReader() method
14DataGrid1.DataSource = objCmd.ExecuteReader();
15DataGrid1.DataBind();
16
17//close the connection
18objConn.Close();

如果用微软封装的Data Access Application Block, 其主要是sqlHelper类,代码如下:

1//Create the connection string and sql to be executed
2string strSql = "select * from products where categoryid = 1";
3string strConnTxt = "Server=(local);Database=Northwind;Integrated Security=True;";
4
5DataGrid1.DataSource = SqlHelper.ExecuteReader(strConnTxt, CommandType.Text, strSql);
6DataGrid1.DataBind();

2. 调用存储过程进行控件绑定
常规代码如下:

 1//Open a connection to Northwind
 2SqlConnection objConn = new SqlConnection("Server=(local);Database=Northwind;Integrated Security=True;");
 3ObjConn.Open();
 4
 5//Create the stored procedure command object
 6SqlCommand objCmd = new SqlCommand("getProductsCategory", objConn);
 7objCmd.CommandType = CommandType.StoredProcedure;
 8
 9//create the parameter object for the stored procedure parameter
10objCmd.Parameter.Add("@CategoryID", SqlDbType.Int);
11objCmd.Parameter["@CategoryID"].Value = 1;
12
13//create our DataAdapter and DataSet objects
14SqlDataAdapter objDA = new SqlDataAdapter(objCmd);
15DataSet objDS = new DataSet("Category_Results");
16
17//fill the dataset
18objDA.Fill(objDS);
19
20//databind the datagrid
21DataGrid1.DataSource = objDS;
22DataGrid1.DataBind();
23
24//close connection
25objConn.Close();
如果用微软封装的Data Access Application Block,其主要是sqlHelper类,代码如下:
1string strConn = "Server=(local);Database=Northwind;Integrated Security=True;";
2DataSet objDS = SqlHelper.ExecuteDataset(strConn, CommandType.StoredProcedure, "getProductsByCategory"new SqlParameter("@CategoryID"1));
3
4DataGrid1.DataSource = objDS;
5DataGrid1.DataBind();

Data Access Application Block, 有其封装的源代码和帮助文件,我们也可以根据项目需求做一下改动再编译成dll引入项目,以给项目开发带来便利. 下载地址如下:
http://download.microsoft.com/download/VisualStudioNET/daabref/RTM/NT5/EN-US/DataAccessApplicationBlock.msi

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

[EntLib]微软企业库6 基于Data Access Application Block的Repository

名字起得有点夸张了,其实就是实现基于Data Access Application Block的DAL基类和约束 首先Repository部分没什么好描述的,如果有不了解的可以直接百度或者谷歌相关内容...
  • starfd
  • starfd
  • 2015-02-03 17:12
  • 2201

Data Access Application Block 2 应用场景

1. 使用DbDataReader从数据库中返回多行using (IDataReader reader = db.ExecuteReader(CommandType.Text, "Select Nam...

Data Access Application Block

1. 激动人心的data access功能?2. 一个简单的示例  1. 激动人心的data access application block,原来数据访问时如此简单 你试着想过通过一行代码得到存储...

Data Access Application Block3.1

  • 2007-08-30 11:45
  • 952KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)