Couramment.Configurer un NHibernate base de données à partir d'un fichier de config?

Cette question est similaire à La configuration Couramment NHibernate de NHibernate section de configuration mais je suis encore à essayer d'envelopper mon cerveau autour de ça, et la réponse n'est pas suffisante.

Je veux faire une base de données agnostique application de gestion du stock (plus une expérience qu'autre chose). Je veux utiliser le Fluide automapper parce qu'il semble comme une idée vraiment cool si je pouvais le faire fonctionner... conserve de belles choses et génériques, et un peu les forces de l'utilisation d'un modèle.

Donc, je fais une classe d'assistance avec une SessionFactory créateur de la sorte:

    private static ISessionFactory _SessionFactory;

    public static ISessionFactory SessionFactory {
        get {
            if (_SessionFactory == null) {

                var config = new Configuration().Configure();
                _SessionFactory = Fluently.Configure(config)
                    .Mappings (m => m.AutoMappings.Add (AutoMap.AssemblyOf<Machine> ()))
                    .BuildSessionFactory ();
            }
            return _SessionFactory;
        } 
    }

    public static ISession GetSession()
    {
        return SessionFactory.OpenSession();
    }

- Je faire une application.config comme suit:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <configSections>
        <section name="hibernate-configuration" type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" />
    </configSections>
    <connectionStrings>
        <add name="NHDataModel" connectionString="Data Source=10.10.10.10;Integrated Security=SSPI;Database=Inventory;" />
    </connectionStrings>
    <hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
        <session-factory>
            <property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
            <property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property>
            <property name="dialect">NHibernate.Dialect.MsSql2005Dialect</property>
            <property name="connection.connection_string_name">NHDataModel</property>
            <property name="show_sql">true</property>
        </session-factory>
    </hibernate-configuration>
</configuration>

Le message d'erreur que j'obtiens quand j'essaie de générer une session de jouer avec est comme suit:

An invalid or incomplete configuration was used while creating a SessionFactory. Check PotentialReasons collection, and InnerException for more detail.

  * Database was not configured through Database method.

Il n'y a pas d'exception interne.

Je pense que cela fonctionne, mais je voudrais, bien sûr, être mauvais. Un examen de l'objet de config montre qu'il a recueilli de l'information sur la propriété dans l'application de config, pourtant, ne semble pas à l'appliquer à la fluidité de la Base de données de la Méthode. J'ai vu des exemples très similaire à la présente partout sur l'internet, mais aucun ne correspondait exactement, il y a donc beaucoup de place pour les erreurs stupides.

Je suis sûr que c'est une chose simple, mais j'ai été de me gratter la tête sur cela pendant des heures. Toute aide serait grandement appréciée. Nhibernate et FluentNhibernate sont techs que je n'ai jamais utilisé avant, donc cela a été une courbe d'apprentissage abrupte.

C'était quoi ton erreur? Je vais avoir le même problème et ne peut pas trouver la solution. Fluently.Configure().Database(... fonctionne parfaitement, mais dans le Web.config, App.erreur de configuration s'affiche!
Voir la accepté de répondre ci-dessous. J'ai commenté sur ce qui se passait.
Désolé, mon erreur. N'avais pas vu votre commentaire.

OriginalL'auteur Jeremy Holovacs | 2011-10-20