Heya,我目前正在努力让bltoolkit在我的项目中工作。 我已将BLToolkit.3项目添加到我的解决方案中并正确引用它。
有问题的代码非常简单。
public List<Account> LoadAccounts()
{
using (DbManager db = new DbManager("MySql"))
{
var query = new SqlQuery<Account>();
return query.SelectAll(db);
}
}
使用
的app.config<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="bltoolkit" type="BLToolkit.Configuration.BLToolkitSection, BLToolkit.3"/>
</configSections>
<bltoolkit>
<dataProviders>
<add type="BLToolkit.Data.DataProvider.MySqlDataProvider" />
</dataProviders>
</bltoolkit>
<connectionStrings>
<add name="MySql" connectionString="Server=localhost;Port=3306;Database=BLT;Uid=root;" providerName="MySql.Data.MySqlClient"/>
</connectionStrings>
</configuration>
当我尝试运行它时,我得到以下异常:“'BLToolkit.Data.DbManager'的类型初始值设定项引发异常。”
仔细检查后,它似乎是DbManager.Config.cs中的第261行
Type dataProviderType = Type.GetType(provider.TypeName, true);
这基本上无法获得MySQL提供商类型。我已经尝试将MySQL.data.dll放在我的应用程序运行路径中,没有运气。
有什么想法吗?
答案 0 :(得分:2)
默认情况下,MySqlDataProvider
未包含在构建中。您必须下载源代码并将MySqlDataProvider.cs
添加为“现有项目”到项目中(并适当地修改程序集限定的类型名称)。或者,如果您可以重新编译BLTooklit,则可以将其包含在BLToolkit项目中。