首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用MySQL连接的BLToolkit

使用MySQL连接的BLToolkit
EN

Stack Overflow用户
提问于 2012-09-11 16:38:34
回答 1查看 2K关注 0票数 0

我正在尝试使用BLToolkit建立到MySQL服务器的连接,并通过NuGet安装了MySql.Data (6.5.4)、BLToolkit (4.1.12)和BLToolkit.MySql (4.1.12)。我可以在一行中建立到MSSQL服务器的连接,但在使用MySQL时遇到了问题,最终得到了以下配置文件……

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <BLToolkit>
        <dataProviders>
            <add type="BLToolkit.Data.DataProvider.MySqlDataProvider" />
        </dataProviders>
    </BLToolkit>
    <configSections>
        <section name="BLToolkit" type="BLToolkit.Configuration.BLToolkitSection, BLToolkit.4" />
    </configSections>
    <connectionStrings>
        <add name="Test"
             connectionString="Data Source=localhost;Port=3306;Database=bltest;User ID=root;Password=root;"
             providerName="MySql.Data.MySqlClient" />
    </connectionStrings>
</configuration>

我扩展了DbManager类以实现对表的引用,并将连接字符串的名称传递给基类。这就是我如何实现这个行为的,它应该告诉BLToolkit从配置文件加载connectionString……

代码语言:javascript
复制
class BlDb : DbManager {
    public BlDb()
        : base("Test") {
        return;
    }
    public Table<Car> Car { get { return GetTable<Car>(); } }
    public Table<Make> Make { get { return GetTable<Make>(); } }
}

但是,会抛出一个异常。异常是“'BLToolkit.Data.DbManager‘的类型初始化器抛出了一个异常”。内部异常是“配置系统初始化失败”。我应该如何继续?请注意,在SO,Getting BLToolkit to work with MySQL上确实存在类似的问题,这对你可能是一个有用的参考,但对我来说没有任何意义。安装两个NuGet包还不够吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-09-12 04:56:26

首先,您需要将对BLToolkit.Data.DataProvider.MySql.4.dll的引用添加到项目中。然后修改扩展的DbManager类,如下所示

代码语言:javascript
复制
class BlDb : DbManager
{
    public BlDb()
        : base( new BLToolkit.Data.DataProvider.MySqlDataProvider(), "Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword" )
    {           
    }
    public Table<Car> Car { get { return GetTable<Car>(); } }
    public Table<Make> Make { get { return GetTable<Make>(); } }
}

您可以替换硬编码的连接字符串,并从ConfigurationManager.ConnectionStrings"Test".ConnectionString等app.config文件中返回它

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12365849

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档