簡體   English   中英

NHibernate 2.0將Composite-ID映射到Composite-ID內

[英]NHibernate 2.0 mapping a composite-id inside a composite-id

我有一個table1 TAS:

<class name="TAS" table="NCPTB016_TAS">
<composite-id>
  <key-many-to-one column="NU_MACRO_PROCESSO_007" name="MacroProcesso"/>
  <key-property column="NU_TAS" name="Id" />
</composite-id>
... //and some other properties

我有一張桌子是:

<class name="STAS" table="NCPTB017_STAS">
<composite-id>
  <key-many-to-one column="NU_MACRO_PROCESSO_016" name="MacroProcesso"/>
  <key-many-to-one column="NU_TAS_016" name="TAS" />
  <key-property column="NU_STAS" name="Id" />
</composite-id>
... //some properties

表STAS是一個復合ID。 它是一個TAS密鑰(是一個復合ID)和另一個密鑰。 我該如何映射? 當我按照自己的方式做時,我得到一個錯誤:

外鍵(FK451D68E632669A4:NCPTB017_STAS [NU_TAS_016]))的列數必須與引用的主鍵(NCPTB016_TAS [NU_MACRO_PROCESSO_007,NU_TAS])相同


為了更簡單,我如何映射具有復合ID的多對一?

例:Table1具有一個復合ID Id1和Id2 Table2具有來自table1的多對一,因為它具有一個復合FK,其中包含來自table1的Id1和Id2 ...

感謝您的幫助!

從未使用過,但我會這樣說:

<many-to-one ...>
  <column name="key1" />
  <column name="key2" />
</many-to-one>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM