Fluent Nhibernate与MySQL的连接字符串

时间:2011-07-02 21:22:30

标签: c# mysql nhibernate fluent-nhibernate

我已经回顾了帖子How to configure Fluent NHibernate with MySQL,但我对MySQL比较新,我需要实际设置连接字符串本身。我已经安装了MySQL作为WAMP安装的一部分,需要填写实际的连接字符串。有人可以通过扩展链接的答案实际包含一个完整的连接字符串示例来帮助我吗?

赞赏。

修改:我尝试了几种不同的操作,并且不断收到以下错误消息:

Can't load file FluentConfiguration.cs under d:\Builds\FluentNH-v1.x-nh3\src\FluentNHibernate\Cfg.
Check the file permission and the existence of that file.

我通过nuget安装了FNH,我不明白为什么它会查看那条路径,因为d:驱动器是我的CD而不是硬盘。很困惑。

1 个答案:

答案 0 :(得分:5)

您粘贴的错误看起来像Visual Studio尝试本地化源以显示异常的来源。这不是真正的异常消息 - 你应该把它放在那里,这可能是错误的配置。

如果您使用默认设置安装了WAMP,则会将其配置为侦听3306端口,并且只有本地root帐户而无需密码。所以你的连接字符串看起来应该是这样的:

Server=localhost; Port=3306; Database=[database_name_here]; Uid=root; Pwd=;

(可能根本不需要Pwd=部分。)

因此您需要将其粘贴到App.config / Web.config的{​​{1}}部分:

<connectionStrings>

然后使用链接问题的解决方案:

<connectionStrings>
    <add name="ConnectionString" 
         connectionString="Server=localhost; Port=3306; 
              Database=[database_name_here]; Uid=root; Pwd=;" 
         providerName="System.Data.SqlClient" />
</connectionStrings>

或者,您可以将连接字符串直接粘贴到Fluent的配置中,如下所示:

MySqlConfiguration.Standard.ConnectionString(
    c => c.FromConnectionStringWithKey("ConnectionString")
)

无论如何,这个默认的root / no密码配置只能用于本地开发和测试目的。