Data Access Application Block

本文介绍如何使用DataAccessApplicationBlock简化数据库操作。通过一个ASP.NET网站示例展示了如何利用此工具包一行代码获取存储过程返回的DataSet,并进行数据展示。

1. 激动人心的data access功能?

2. 一个简单的示例


1. 激动人心的data access application block,原来数据访问时如此简单

你试着想过通过一行代码得到存储过程返回的DataSet吗?或者你知道什么代码是ado.net的最佳实践吗?好的,Data Access Application Block提供了这些问题的答案。Data Access Application Block提供了从数据库中读取dataset,更新数据库,取得存储过程返回值等。


2. 一个简单web的示例

该示例是一个asp.net web site。具体过程如下:

首先新建asp.net web application。添加引用。

使用EntLibConfig.exe打开web.config文件。由于vs生成的模板中已经包含了两个connectionString,选择其中的ApplicationServices作为default database instance,

设置connection string。

编写程序代码,这里使用的entlib的ioc来实现的。

Dao类:

using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace DataAccessApplicationBlockTest { using Microsoft.Practices.EnterpriseLibrary.Data; using System.Data; using System.Data.Common; public class Dao { private Database db; // IoC public Dao(Database db) { this.db = db; } public DataSet GetPollDataSet() { string sql = "select * from Poll"; DbCommand command = db.GetSqlStringCommand(sql); return db.ExecuteDataSet(command); } } }

页面后置代码:

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using Microsoft.Practices.EnterpriseLibrary.Data; using System.Data; using Microsoft.Practices.Unity; using Microsoft.Practices.EnterpriseLibrary.Common.Configuration.Unity; using Microsoft.Practices.EnterpriseLibrary.Common.Configuration; using System.Data.Common; namespace DataAccessApplicationBlockTest { public partial class Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if(!IsPostBack) { var container = new UnityContainer().AddNewExtension<EnterpriseLibraryCoreExtension>(); Dao dao = EnterpriseLibraryContainer.Current.GetInstance<Dao>(); this.GridView1.DataSource = dao.GetPollDataSet(); this.GridView1.DataBind(); } } } }


本博客均是本人在学习过程中的总结,其中难免存在不足之处,欢迎指正。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值