Fluent nHibernate配置错误

Fluent nHibernate配置错误,nhibernate,orm,fluent-nhibernate,Nhibernate,Orm,Fluent Nhibernate,我正在应用程序中使用以下代码配置Fluent nHibernate var FNHConfig = Fluently.Configure() .Database(MsSqlConfiguration.MsSql2008 .ConnectionString(c => c.FromConnectionStringWithKey("FNHConnection")) )

我正在应用程序中使用以下代码配置Fluent nHibernate

var FNHConfig = Fluently.Configure()
                .Database(MsSqlConfiguration.MsSql2008
                    .ConnectionString(c => c.FromConnectionStringWithKey("FNHConnection"))
                    )
                    .Mappings(m => m.FluentMappings.AddFromAssembly(Assembly.GetCallingAssembly()))
                    .BuildConfiguration();

            return FNHConfig.BuildSessionFactory();
但它给出了一个例外,即“在创建SessionFactory时使用了无效或不完整的配置”。有人知道如何解决这个异常吗


谢谢

这很可能是上面马克所说的映射问题,但您需要提供更多细节。这是在构建会话工厂失败时引发的一般外部异常

try
{
    var FNHConfig = Fluently.Configure()
            .Database(MsSqlConfiguration.MsSql2008
                .ConnectionString(c => c.FromConnectionStringWithKey("FNHConnection"))
                )
                .Mappings(m => m.FluentMappings.AddFromAssembly(Assembly.GetCallingAssembly()))
                .BuildConfiguration();

        return FNHConfig.BuildSessionFactory();
}
catch (Exception ex)
{
    Console.WriteLine(ex.ToString());
}

查看控制台窗口中的错误,您很可能会找到导致此异常的罪魁祸首。

如果深入了解内部异常,它很可能会告诉您问题所在,NH3.X有相当不错的异常消息

我要暗中说,您没有将对象上的所有公共属性方法事件标记为
虚拟


你能发布你的业务对象和映射类吗。

我认为你的FluentMaps会在某个地方出现问题,而不是配置问题。m=>m.FluentMappings.AddFromAssembly(Assembly.GetCallingAssembly(),GetCallingAssembly是我的DAL程序集,那里没有映射定义,我应该在DAL中定义映射吗?内部异常声明“FluentNHibernate.Automapping.iautoclaslike,FluentNHibernate,Version=1.2.0.712,Culture=neutral,PublicKeyToken=8aa435e3cb308880”缺少无参数构造函数。”感谢@issue resolve,缺少一些引用,这就是它抛出异常的原因。内部异常消息是“'FluentNHibernate.Automapping.IAutoClasslike,FluentNHibernate,Version=1.2.0.712,Culture=neutral,PublicKeyToken=8aa435e3cb308880'缺少无参数构造函数。”谢谢,问题解决,缺少一些引用,这就是它引发异常的原因。。