KiMoGiGi 技术文集
不在乎选择什么,而在乎坚持多久……
IT博客
首页
联系
聚合
管理
185 Posts :: 14 Stories :: 48 Comments :: 0 Trackbacks
公告
KiMoGiGi 技术文集
注:本Blog技术文章
除特别说明外
全部均来源Web和转载
最近正在看的
(图片来源
China-Pub
):
常用链接
我的随笔
我的评论
我参与的随笔
留言簿
(10)
给我留言
查看公开留言
查看私人留言
随笔分类
(219)
AJAX.NET(5)
ASP.NET(38)
Basic(7)
C# / Winforms(64)
Enterprise Library(3)
Java(1)
JavaScript(35)
Python(4)
Web小技巧(19)
WPF/SilverLight(4)
工具插件(6)
数据库相关(7)
经验之谈(24)
网络编程(2)
随笔档案
(185)
2011年3月 (1)
2010年11月 (1)
2010年8月 (1)
2010年6月 (2)
2009年10月 (1)
2009年9月 (9)
2009年7月 (1)
2009年5月 (2)
2009年3月 (6)
2009年2月 (3)
2009年1月 (7)
2008年12月 (6)
2008年11月 (5)
2008年10月 (3)
2008年9月 (1)
2008年8月 (5)
2008年7月 (10)
2008年6月 (9)
2008年5月 (6)
2008年4月 (5)
2008年3月 (6)
2008年2月 (1)
2008年1月 (4)
2007年12月 (11)
2007年11月 (11)
2007年10月 (2)
2007年8月 (1)
2007年4月 (4)
2007年3月 (11)
2007年2月 (3)
2007年1月 (10)
2006年12月 (12)
2006年11月 (6)
2006年10月 (3)
2006年8月 (3)
2006年7月 (5)
2006年6月 (8)
文章分类
(25)
ASP.NET(8)
Basic Knowledge(1)
C#(4)
JavaScript
Web设计
开源框架 - NHibernate
数据库相关
经验之谈
英文文章翻译(12)
文章档案
(14)
2008年8月 (1)
2008年6月 (2)
2007年12月 (4)
2007年11月 (7)
收藏夹
JavaScript
Friend 's Blog
My Step
映画记录
技术崇拜
A JavaScript Fancier
Dflying
dudu
First we try, then we trust
lifesinger
淘宝网UED部-Web前端
TerryLee's Tech Space
听棠.NET
周爱民
职业生涯顾问Leo的专栏
鸟食轩
技術網站
C# Corner
codeplex
CSDN
博客園
数据结构
點部落
搜索
daab 3.1使用笔记 (转载)
相信很多人使用过Microsoft Data Application Blocks,在以前的版本中(3.0之前),都是通过SqlHelper类来实现,适用SQLServer数据库,如果使用其他数据库,就需要重新写一个,很麻烦,PetShop3.0中就是另外写了一个OraHelper来实现Oracle数据库的操作,在3.1版中这种情况可不再有了。
可以到gotdotnet下载,具体地址不记得了。
DAAB3.1连NameSpace也改了:GotDotNet.ApplicationBlocks.Data,通过一个通用类AdoHelper实现了SqlServer, Oracle, OleDB, ODBC不同类型的连接,由AdoHelper自动选择合适的数据库连接类来连接,当你在不同数据库间切换时,可以在只修改配置文件不改动代码的情况下实现数据库的转换。
在配置文件中可以这样配置:
<configSections>
<section name="daabProviders" type="GotDotNet.ApplicationBlocks.Data.DAABSectionHandler, GotDotNet.ApplicationBlocks.Data">
</section>
</configSections>
<daabProviders>
<daabProvider alias="misapp" assembly="GotDotNet.ApplicationBlocks.Data" type="GotDotNet.ApplicationBlocks.Data.SqlServer" />
</daabProviders>
代码中只要使用(vb)
Dim adoHelper As AdoHelper = AdoHelper.CreateHelper("misapp")
即可创建AdoHelper的一个实例,以后如果数据库改为Oracle,只需将配置文件中连接串相应修改,同时将daabProviders一节改为以下内容即可,如果使用的是标准sql语句,代码中不需任何修改。
<daabProviders>
<daabProvider alias="misapp" assembly="GotDotNet.ApplicationBlocks.Data" type="GotDotNet.ApplicationBlocks.Data.Oracle" />
</daabProviders>
如果不使用别名,则要在实例化AdoHelper时指定所的数据库类型,如(vb):
Dim sqlHelper As AdoHelper = AdoHelper.CreateHelper(GetType(SqlServer).Assembly.FullName, GetType(SqlServer).FullName)
或
Dim sqlHelper As AdoHelper = AdoHelper.CreateHelper("GotDotNet.ApplicationBlocks.Data, GotDotNet.ApplicationBlocks.Data.SqlServer)
接下来的使用就很简单了(C#,AspNetPager示例),
private void Page_Load(object sender, System.EventArgs e)
{
AdoHelper helper = AdoHelper.CreateHelper("misapp");
string connString = System.Configuration.ConfigurationSettings.AppSettings["connString"];
if(!Page.IsPostBack)
{
AspNetPager1.RecordCount=(int)helper.ExecuteScalar(connString,System.Data.CommandType.Text,"select count(*) from orders");
BindData();
}
}
void BindData()
{
AdoHelper helper = AdoHelper.CreateHelper("misapp");
string connString = System.Configuration.ConfigurationSettings.AppSettings["connString"];
IDataParameter[] para = new IDataParameter[2];
para = helper.GetSpParameterSet(connString,"mypager");
// mypager为获取分页数据的存储过程
para[0].Value=AspNetPager1.PageSize;
para[1].Value=AspNetPager1.CurrentPageIndex;
DataGrid1.DataSource=helper.ExecuteReader(connString,"mypager",para);
DataGrid1.DataBind();
}
public void AspNetPager1_PageChanged(object src, Wuqi.Webdiyer.PageChangedEventArgs e)
{
AspNetPager1.CurrentPageIndex=e.NewPageIndex;
BindData();
}
上面这段代码不需任何修改即可改为Oracle上的应用(数据库中的存储过程还是要改的,配置文件要改一下)
Data Access Application Block 3.1 下载地址:
http://www.gotdotnet.com/workspaces/releases/viewuploads.aspx?id=c20d12b0-af52-402b-9b7c-aaeb21d1f431
posted on 2006-06-23 14:28
KiMoGiGi
阅读(1007)
评论(0)
编辑
收藏
引用
所属分类:
C# / Winforms
只有注册用户
登录
后才能发表评论。
Powered by:
IT博客
Copyright © KiMoGiGi