我在映射命名空间“nhibernateTest.Domain”中包含的所有实体时遇到了一些问题。它基本上包含了所有Map类,如StudentMap,DepartmentMap等。现在在正常的nhibernate情况下,我们以前做的是:
private ISessionFactory _sessionFactory;
private Configuration _configuration;
[TestFixtureSetUp]
public void TestFixtureSetUp()
{
_configuration = new Configuration().Configure().AddAssembly("nHibernateTest");
_sessionFactory = _configuration.BuildSessionFactory();
}
现在它以前做的是。在我的命名空间中查找所有“* .hbm.xml”文件并自动映射它们......
有人可以告诉我如何为流利的nHibernate做同样的事情吗?以便它查找所有地图类并自动映射它们,这样我就不必为不同的Map类单独创建会话?
答案 0 :(得分:0)
在应用程序中配置Fluent NHibernate时,需要指定映射。这通常由
完成Fluently.Configure()
.Database(/* your database settings */)
.Mappings(m => m.FluentMappings.AddFromAssemblyOf<StudentMap>())
.ExposeConfiguration(/* alter Configuration */) // optional
.BuildSessionFactory();
上面的代码来自这个优秀的link,其中讨论了如何配置Fluent。