我可以拆分一个nhibernate映射文件吗?

时间:2014-08-07 19:04:13

标签: nhibernate

是否可以将模型拆分为两个或更多单独的.hbx文件?

我想添加一个用于测试的类,但不是在生产代码中。

2 个答案:

答案 0 :(得分:1)

不确定我是否仍然使用它但你可以使用" extends"在映射中分离出类:

<hibernate-mapping>
 <joined-subclass name="DomesticCat" extends="Cat">
      ...
 </joined-subclass>

干杯!!

答案 1 :(得分:1)

NHibernate本机解决方案是调整ISessionFactory配置。我首选的方法是将类.hbm.xml文件映射到两个不同的库中。

第一个/常见可能是MyProject.Data,第二个是出于测试目的,可能是MyProject.Test。生产代码将跳过最后一个元素:

nhibernate.config

<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">

  <session-factory name="DefaultFactory">

    <property name="connection.connection_string">Data Source=....</property>
    ...

    <mapping assembly="MyProject.Data" />
    <mapping assembly="MyProject.Test" /> // remove this line for production

  </session-factory>

</hibernate-configuration>

所有映射文件仍必须具有后缀.hbm.xml,并且必须标记为嵌入式资源