我試圖解決很容易的問題。我想建立連接到2個完全不同的數據庫(但都是mysql)。現在我試圖通過創建多個配置文件然後創建多個會話來解決這個問題。一切工作,直到我達成關係。NHibernate和多個數據庫
我有2個數據庫表2:
DB1 - 新聞
DB2 - News_Authors
我添加新聞到DB1配置和News_Authors到DB2配置。當我嘗試建立簡單的一到一個關係錯誤,我得到:
An association from the table songs refers to an unmapped class: db1.News_Authors
News.hbm.xml
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="project.News, project" table="news" lazy="false">
<id name="id" column="id" type="integer" length="11">
<generator class="native" />
</id>
<property name="title" type="String" length="255" />
<property name="authorid" type="integer" length="5" />
<one-to-one name="NewsAuthor" cascade="all-delete-orphan" lazy="proxy" column="authorid" unique="true" />
</class>
</hibernate-mapping>
News_Authors.hbm.xml
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="project.News_Authors, project" table="news_authors" lazy="false">
<id name="id" column="id" type="integer" length="11">
<generator class="native" />
</id>
<property name="name" type="String" length="255" />
</class>
</hibernate-mapping>
config 我添加了這個來啓用映射。現在,如果我同時設置在一個配置文件,一切正常......
<mapping resource="project.News.hbm.xml" assembly="project" />
所以怎麼也我會的創建過程中「通知」 NHibernate的,我有多個會話?或者我應該選擇完全另一種方法?
我認爲是一個的很多答案錯過的細微差別。您是否說這些表格位於兩個不同的數據庫中,並且您想要跨數據庫加入數據? – 2009-05-08 20:35:43