Fluent nhibernate 如何使用Fluent配置数据库表?

Fluent nhibernate 如何使用Fluent配置数据库表?,fluent-nhibernate,nhibernate-mapping,Fluent Nhibernate,Nhibernate Mapping,Iam正在尝试生成数据库的表,但未生成表。 我正在这样做映射: using Domain.Entidades; using FluentNHibernate.Cfg; using FluentNHibernate.Cfg.Db; using NHibernate.Tool.hbm2ddl; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threa

Iam正在尝试生成数据库的表,但未生成表。 我正在这样做映射:

using Domain.Entidades;
using FluentNHibernate.Cfg;
using FluentNHibernate.Cfg.Db;
using NHibernate.Tool.hbm2ddl;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Domain.Infraestrutura
{
    public class Conexao
    {
        public static void CriarTabelasBanco()
        {

            FluentConfiguration configuration = Fluently.Configure()
                .Database(MsSqlConfiguration.MsSql2008.ConnectionString(x => x.FromConnectionStringWithKey("psConnection")).ShowSql())
                .ExposeConfiguration(cfg => new SchemaExport(cfg).Create(true, true))
                .Mappings(x => x.FluentMappings.AddFromAssemblyOf<Pessoa>());

            configuration.BuildSessionFactory();
        }
    }
}
使用Domain.Entidades;
使用FluentNHibernate.Cfg;
使用FluentNHibernate.Cfg.Db;
使用NHibernate.Tool.hbm2ddl;
使用制度;
使用System.Collections.Generic;
使用System.Linq;
使用系统文本;
使用System.Threading.Tasks;
命名空间域.Infraestrutura
{
公共类科内考
{
公共静态无效CriarTabelasBanco()
{
FluentConfiguration=Fluently.Configure()
.Database(MsSqlConfiguration.MsSql2008.ConnectionString(x=>x.fromConnectionString WithKey(“psConnection”)).ShowSql()
.ExposeConfiguration(cfg=>newschemaexport(cfg).Create(true,true))
.Mappings(x=>x.FluentMappings.AddFromAssemblyOf());
BuildSessionFactory();
}
}
}

首先添加映射,然后调用ExposeConfiguration,否则在调用SchemaExport时配置不知道映射

除此之外,
SchemaExport
以静默方式失败,因此如果有任何错误,它将不会抛出异常,相反,您可以查看SchemaExport实例的异常列表,因此您必须稍微改变调用的结构