一,下载并安装好Enterprise Library 4.1
二,新建一个Web应用程序
三,右键点击Web.Config 文件 使用 Edit Enterprise Library Configuration 可以编辑Web.Config,可以看到数据访问程序块是默认存在的。
可以新建连接字符串,可以新建指定更多的
我建立了两个字符串
和两个Custom Provider 分别是SQL 和Oracle
可以设置加密和默认连接字符串
四,添加引用(注意:这里有可能你也会出现和我一样的问题,就是编译出错,所以我引用的组件位置是官方示例程序的两个组件,程序编辑才通过)
编译通过但运行还是不行,就打开Web.Config 删除报错位置的“, PublicKeyToken=31bf3856ad364e35” 成为下面这样,不报错了
<section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=4.1.0.0, Culture=neutral" />
五,编写代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using Microsoft.Practices.EnterpriseLibrary.Data;
using System.Data.Common;
namespace DataAccessBlock
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
//查询数据
Database db = DatabaseFactory.CreateDatabase();
this.GridView1.DataSource = db.ExecuteReader(CommandType.Text, "SELECT * FROM Projects");
this.GridView1.DataBind();
}
protected void Button2_Click(object sender, EventArgs e)
{
//调用存储过程(直接传参数的简单调用)
Database db = DatabaseFactory.CreateDatabase("Conn2");
this.GridView1.DataSource = db.ExecuteReader("GetUser", "admin");
this.GridView1.DataBind();
}
protected void Button3_Click(object sender, EventArgs e)
{
Database db = DatabaseFactory.CreateDatabase("Conn1");
//带输出和返回参数的存储过程调用
DbCommand cmd = db.GetStoredProcCommand("addRole");
db.AddInParameter(cmd, "Id", DbType.Int32, DateTime.Now.Millisecond);
db.AddInParameter(cmd, "Name", DbType.String, "技术总监");
db.AddOutParameter(cmd, "newLastChanged", DbType.Int16, 4);
db.AddParameter(cmd, "RecordCount", DbType.Int16, ParameterDirection.ReturnValue, "", DataRowVersion.Default, 0);
db.ExecuteNonQuery(cmd);
Response.Write("输出参数值:" + db.GetParameterValue(cmd, "newLastChanged").ToString());
Response.Write("<br />返回参数值:" + db.GetParameterValue(cmd, "RecordCount").ToString());
}
protected void Button4_Click(object sender, EventArgs e)
{
//使用事务
Database db = DatabaseFactory.CreateDatabase("Conn1");
using (IDbConnection conn = db.CreateConnection())
{
conn.Open();
IDbTransaction _trans = conn.BeginTransaction();
try
{
DbCommand _cmd = db.GetSqlStringCommand("Insert Into Roles(Id,Name) values(@Id,@Name)");
db.AddInParameter(_cmd, "Id", DbType.Int32, 45);
db.AddInParameter(_cmd, "Name", DbType.String, "UI设计");
db.ExecuteNonQuery(_cmd, _trans as DbTransaction);
db.ExecuteNonQuery(_cmd, _trans as DbTransaction);//字段上建有唯一索引,故第二次插入同样记录时会报错
_trans.Commit();
}
catch
{
try
{
_trans.Rollback();//事务提交失败时,则回滚(是否回滚成功,可查看表中有无AA的记录即可)
}
catch { }
}
finally
{
conn.Close();
}
}
}
}
}
六,添加生成事件脚本,复制Config,没有Config会报错
copy "$(ProjectDir)\*.config" "$(TargetDir)"
示例源码下载:EL41Sample.rar
Enterprise Library 4.1 目录:Enterprise Library 4.1 快速使用图文笔记 目录
分享到:
相关推荐
在下载的压缩包 "Enterprise Library 4.1 - October 2008.msi" 文件中,包含了安装程序,通过运行这个MSI文件,开发者可以在他们的开发机器上安装整个Enterprise Library 4.1框架,从而获得上述所有组件的使用权限。...
1. **Data Access Application Block (DAAB)**:这是一个用于简化数据库交互的库,它提供了数据库连接的抽象和SQL命令的执行,支持多种数据库平台,如SQL Server、Oracle、MySQL等。 2. **Exception Handling ...
Microsoft Enterprise Library 4.1的验证模块是解决数据验证问题的强大工具,它提供了丰富的预定义验证策略和可配置参数,使得开发者能够快速、高效地实现数据输入验证,从而提升应用的质量和稳定性。通过深入理解并...
Enterprise Library – Data Access Application Block 学习手册(最新版) - Part 1 Enterprise Library for .Net Framework 3.5 – EntLib v4.1 是 patterns & practices 小组为.NET Framework 3.5 开发一套企业库...
《最新版 Enterprise Library 企业库 V4[1].1 中文学习手册.pdf》提供了详细的图文教程,涵盖了Enterprise Library 4.1的安装、配置、使用方法以及各应用块的深入解析。通过阅读此手册,开发者能够快速掌握企业库的...
1. **数据访问应用块** (Data Access Application Block, DAAB): Enterprise Library 4.1 提供了DAAB,它抽象出数据库访问层,使开发者可以使用统一的接口来与不同的数据库系统交互,如SQL Server、Oracle或MySQL...
总之,Enterprise Library 4.1 学习资料是一份宝贵的资源,可以帮助.NET开发者快速掌握这个强大的工具集,并将其应用于实际项目中,提升开发效率和代码质量。通过阅读和实践,你将能够更好地理解和运用面向服务架构...
微软—数据库—操作类—带源码 微软—数据库—操作类—带源码 微软—数据库—操作类—带源码 微软—数据库—操作类—带源码 微软—数据库—操作类—带源码
微软模式&实践团队的开源作品 希望学习wcsf的朋友必不可少的类库哦
1. 数据访问应用块(Data Access Application Block, DAAB):DAAB 提供了一种抽象层,使得开发者可以轻松地与各种数据库系统交互,如 SQL Server、Oracle 和 ODBC 数据源。它支持数据库连接池,事务管理和参数化...
在《EnterpriseLibrary企业库V4.1中文学习手册.pdf》中,你将找到这些组件的详细说明,包括如何配置、如何在项目中使用以及各种示例代码。这本书将指导你理解每个应用块的工作原理,如何集成它们到你的项目中,以及...
Enterprise Library4.1中文教程,共8个模块。安全管理(Security Application Block), 缓存管理(Caching Application Block)...都一一做了介绍
Enterprise Library for .Net Framework 3.5 – EntLib v4.1 是patterns & practices 小组为.NET Framework 3.5 开发一套企业库,目前最新版本为v4.1,共包括9个Application Block,包括数据访问(Data Access ...
Enterprise Library 是微软 Patterns & Practices 团队开发...通过以上内容,你可以开始使用Enterprise Library中的Data Access Application Block进行数据访问操作。记得在实践中不断探索和优化,以适应你的项目需求。
2. **Data Access Block 提供的安全特性**:通过使用预编译的存储过程和参数化查询,Enterprise Library帮助开发者避免了潜在的SQL注入漏洞。 四、数据访问策略 1. **事务管理**:Enterprise Library 提供了对本地...
1. 数据访问应用块(Data Access Application Block,DAAB):DAAB 提供了一种统一的方式来访问数据库,无论你使用的是SQL Server、Oracle还是其他数据库系统。它抽象了数据库连接、命令执行和结果集处理,使得...
Microsoft.Practices.EnterpriseLibrary.Data.dll Microsoft.Practices.EnterpriseLibrary.Common.dll Microsoft.Practices.ObjectBuilder.dll
1. **数据访问抽象**:Enterprise Library Data Block 提供了数据访问的统一接口,通过`Database`类,开发者可以创建和管理数据库连接,执行SQL语句或存储过程,无需关注底层的数据库连接字符串或者连接池的细节。...