3

我想从 app.config 和 appSettingKey 配置我的 NHibernate Fluent。

是否有人可以解释文件 app.config 的外观?

MsSqlConfiguration.MsSql2005  
   .ConnectionString(c => c  
    .FromAppSetting("appSettingKey")); 

这是我的connectionsString

Data Source=(local);Initial Catalog=ABC;Integrated Security=True

这不起作用:

<appSettingKey>"Data Source=.;Initial Catalog=ABC;Integrated Security=True"</appSettingKey>

// 垫子,瑞典斯德哥尔摩

4

3 回答 3

9

如果我对您的理解正确,您希望像在您的示例中那样配置 Fluent NHibernate 并使用 App.config 中的连接字符串。下面是我将如何实现这一目标的示例。

应用程序配置:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <appSettings>
    <add key="FluentNHibernateConnection"
      value="server=.;Initial Catalog=YourDB;Integrated Security=True" />
  </appSettings>
</configuration>

创建会话工厂的代码:

private static ISessionFactory CreateSessionFactory()
{
    var fluentConfig = MsSqlConfiguration.MsSql2005
        .ConnectionString.FromAppSetting("FluentNHibernateConnection");

    PersistenceModel persistenceModel = new PersistenceModel();
    persistenceModel.addMappingsFromAssembly(typeof(User).Assembly);

    Configuration nhConfig = new Configuration()
        .AddProperties(fluentConfig.ToProperties());

    persistenceModel.Configure(nhConfig);

    return nhConfig.BuildSessionFactory();
}

希望能帮助到你。

/埃里克(“斯德哥尔摩”同胞)

于 2009-02-22T08:35:24.543 回答
1

阅读Fluent NHibernate wiki中的数据库配置

于 2009-02-22T13:32:08.807 回答
0
Fluently.Configure()
                .Database(
                    MsSqlConfiguration.MsSql2008.ConnectionString(
                                c => c.FromConnectionStringWithKey(connectStringKey)
                            )//End ConnectionString
                        )//End Database
                .Mappings(m =>m.FluentMappings.AddFromAssemblyOf<ADomainClassType>())
                .BuildSessionFactory();

这就是我构建会话工厂的方式。

于 2012-07-15T16:04:13.167 回答