Fluent NHibernate (1.2.0.712) las asignaciones de exportación a HBM no funcionan / no respetan las convenciones

La función de exportación HBM en NHibernate fluido no parece funcionar.

Si llamo a FluentMappingsContainer.ExportTo, las asignaciones generadas salen incorrectas y obtengo la siguiente excepción:

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

Mi código de configuración se ve así:

        MsSqlConfiguration database = MsSqlConfiguration.MsSql2008
            .ConnectionString(GetConnectionString())
            .Cache(c => c
                            .UseQueryCache()
                            .UseSecondLevelCache()
                            .ProviderClass<SysCacheProvider>()
            );

        database.ShowSql();

        FluentConfiguration config = Fluently.Configure()
            .Database(database)
            .Mappings(m => m.FluentMappings.AddFromAssemblyOf<Entity>()
                               .Conventions.AddFromAssemblyOf<Entity>());

        config.ExposeConfiguration(x =>
        {
            x.SetProperty("hbm2ddl.keywords", "auto-quote");
            x.SetInterceptor(new ServiceInterceptor());
        });

        config.ExposeConfiguration(x => { x.SetProperty("current_session_context_class", "thread_static"); });

        // Configure HBM export path, if configured:

        var path = Service.Config.HbmExportPath;

        if (!String.IsNullOrEmpty(path))
            config.Mappings(m => m.FluentMappings.ExportTo(path));

        // Build session factory:

        _sessionFactory = config.BuildSessionFactory();

Establecer HbmExportPath en mi configuración como nulo, la aplicación se inicia y se ejecuta sin problemas. Tan pronto como configuro la ruta de exportación (haciendo que se llame a ExportTo), las asignaciones generadas provocan una excepción como se describió anteriormente.

Mirando las asignaciones exportadas, parece que mis convenciones no se están aplicando; por ejemplo, tengo una convención de clave externa, usando camel-case y sufijo "Id", pero cuando exporto los archivos HBM, las claves principales son constantemente nombrado con un guión bajo y minúscula "_id", por ejemplo:

<class xmlns="urn:nhibernate-mapping-2.2" name="MyApp.Entities.Contact, MyApp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null" table="`Contact`">
  ...
  <bag name="Departments" table="ContactDepartment">
    <key>
      <column name="Contact_id" />
    </key>
    <many-to-many class="MyApp.Entities.Department, MyApp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null">
      <column name="Department_id" />
    </many-to-many>
  </bag>
  ...
</class>

Tuve este problema con la versión anterior y con la versión actual de Fluent.

¿Algunas ideas

Respuestas a la pregunta(2)

Su respuesta a la pregunta