在nhibernate中自动化实体

时间:2011-03-28 05:20:12

标签: fluent-nhibernate

我在映射命名空间“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类单独创建会话?

1 个答案:

答案 0 :(得分:0)

在应用程序中配置Fluent NHibernate时,需要指定映射。这通常由

完成
Fluently.Configure()
  .Database(/* your database settings */)
  .Mappings(m => m.FluentMappings.AddFromAssemblyOf<StudentMap>())
  .ExposeConfiguration(/* alter Configuration */) // optional
  .BuildSessionFactory();

上面的代码来自这个优秀的link,其中讨论了如何配置Fluent。