Fluid NHibernate from appSettings


3

Je souhaite configurer mon NHibernate Fluent à partir d'un app.config et d'un appSettingKey.

Y at-il quelqu'un qui peut expliquer comment devrait ressembler le fichier app.config?

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

Et voici ma connectionsString

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

Cela ne fonctionne pas:

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

// Mats, Stockholm, Suède

  0

Je pense qu'Erik a votre réponse. Vouliez-vous demander pourquoi votre chaîne de connexion ne fonctionne pas? Vous pouvez essayer "Sécurité intégrée = SSPI" 22 févr.. 092009-02-22 09:27:12

9

Si je comprends bien, vous souhaitez configurer Fluent NHibernate comme dans votre exemple et utilisez une chaîne de connexion depuis App.config. Voici un exemple de comment j'accomplirais cela.

App.config:

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

code pour créer une usine de session:

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(); 
} 

Hope it helps.

/Erik (un compagnon "Stockholmare")


1

avoir une lecture de Database Configuration dans le Fluent NHibernate wiki.


0
Fluently.Configure() 
       .Database(
        MsSqlConfiguration.MsSql2008.ConnectionString(
           c => c.FromConnectionStringWithKey(connectStringKey) 
          )//End ConnectionString 
         )//End Database 
       .Mappings(m =>m.FluentMappings.AddFromAssemblyOf<ADomainClassType>()) 
       .BuildSessionFactory(); 

Voici comment je construis ma fabrique de sessions.