Microsoft Enterprise Library 5.0 如何集成MyS
发布时间:2011-03-16 15:19:00
今天在网上找了一下Microsoft Enterprise Library 5.0 如何集成MySQL数据库, 结果只找到了entlib 4.1的扩展模块,
http://entlibcontrib.codeplex.com/ , 按照上面的说明配制后还是不成功。
于是只好手动修改一下来支持entlib 5.0
修改后的项目: MySqlDAAB.rar
MySql.Data.dll: MySql.Data.dll
1. 修改MySqlDatabaseAssembler.cs文件
public class MySqlDatabaseData : DatabaseData
{
#region Public Methods
public MySqlDatabaseData(ConnectionStringSettings connectionStringSettings, IConfigurationSource configurationSource)
: base(connectionStringSettings, configurationSource)
{
}
#endregion
public override System.Collections.Generic.IEnumerable<Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ContainerModel.TypeRegistration> GetRegistrations()
{
yield return new TypeRegistration<Database>(
() => new MySqlDatabase(
ConnectionString,
Container.Resolved<IDataInstrumentationProvider>(Name))) {
Name = Name,
Lifetime = TypeRegistrationLifetime.Transient
};
}
}
2. 修改MySqlDatabase.cs文件中的构造函数和在MySqlDatabase类上加上配制属性
[ConfigurationElementType(typeof(MySqlDatabaseData))]
public class MySqlDatabase : Database
{
public MySqlDatabase(string connectionString)
: base(connectionString, MySqlClientFactory.Instance)
{
}
public MySqlDatabase(string connectionString, IDataInstrumentationProvider instrumentationProvider)
: base(connectionString, MySqlClientFactory.Instance, instrumentationProvider)
{
}
3. 编译MySqlDAAB项目
4. 在项目中引用MySqlDAAB项目
5. 配制文件中如下配制:
<configSections>
<section name="dataConfiguration"
type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings,
Microsoft.Practices.EnterpriseLibrary.Data" />
</configSections>
<dataConfiguration >
<providerMappings>
<add name="MySql.Data.MySqlClient"
databaseType="EntLibContrib.Data.MySql.MySqlDatabase, MySqlDAAB" />
</providerMappings>
</dataConfiguration>
<system.data>
<DbProviderFactories>
<add
name="My Sql Data Provider Factory"
invariant="MySql.Data.MySqlClient"
description=""
type="MySql.Data.MySqlClient.MySqlClientFactory" />
</DbProviderFactories>
</system.data>
<connectionStrings>
<add name="TestDB_MySql"
connectionString="server=127.0.0.1;database=test;User Id=root;Password=****;Persist Security Info=True;"
providerName="MySql.Data.MySqlClient"/>
</connectionStrings>
这样就可以使用MySQL数据库了。
猜你喜欢
- 有朋友问,在数据库中如何查询数据所在的行,一般我们建议一个自增字段就可以了.但是有时却会删除数据,那么那个自增字段也不正确了先不管朋友们为什
- SQL Server2005数据项的分拆与合并:参考示例如下:-- ====================================
- 如果服务器出现Raid故障,在数据基本恢复成功后,发现其中的一个Sql Server日志文件(扩展名LDF)损坏严重,我们可以通过下面的操作
- 如果遇到下述错误,表示当启动mysqld时或重新加载授权表时,在用户表中发现具有非法密码的账户。发现用户'some_user'
- SQL Server中事务日志的作用:持续记录数据库所有的事务和这些事务对数据库所做的修改;一旦数据库出现灾难事件,就需要事务日志来进行近期
- 相信互联网的从业者都有同一个顾虑,那就是怎样将自己网站的用户牢牢抓住。如果以用户的角度来讲,任何网站其实都是一样的,都是我获取东西、获取服务
- !important;严格来说,!important;应该不能算作是一种hack技术,被应用了!important;的属性将在IE中无效,对
- 为了防止再次被攻击,做个验证码过滤程序是必要的。我在网上找了一些资料,觉得用别人做好的代码总是很不爽,自己做麻又不会写复杂的代码,特别是生成
- Acunetix Web Vulnerability Scanner 是一款国外产的及其优秀的扫描工具,可以帮忙挖掘网站内的诸多漏洞,包括常
- 各位大哥: 在javascript中如何取整?比如: var
- 图片按钮是我们经常应用的网页元素,按钮的生成有两种方法,一个是用链接<a>来模拟按钮,一个是用现成的表单按钮。<input
- 以下摘录自 oreilly.JavaScript.The.Definitive.Guide.5th.Edition.Aug.200
- 在已经发表的系列文章中我们已经讨论了两个ASP对象:Application对象和Session对象,因此能够访问Application对象和
- [概 要] 这篇文章讨论常用的"sql注入"技术的细节,应用于流行的Ms IIS/ASP/SQL-Server平台。这里
- 一般现今ASP木马常通过以下四点来操作服务器,所以我们只要将一下四处设置好就能从一 前使用IIS服务器的站长很多,特别是对于ASP网站来说,
- 具体用法如下: 代码如下:-- ============================================= -- Autho
- 笔者通过一周的时间,询问了许多设计人员真实用户,以便确保这六个方面确实是大多数用户所不喜并且有非常大的概率普遍存在于众多的医疗网站之中。那么
- Microsoft JET Database Engine 错误 '80040e2
- MySQL出错代码列表:1005:创建表失败1006:创建数据库失败1007:数据库已存在,创建数据库失败1008:数据库不存在,删除数据库
- VBSCRIPT中的日期,时间,星期函数很丰富,给我们使用带来了很大的方便,我个人使用最多的就是用now()来获取服务器的当前日期和时间。但