ちょっとした異常な問題がありました。私は行くよない限りNHIbernate 1.2 And Lazy Loading
FROM Proposal MSP
JOIN FETCH MSP.DataItems Items
:私は以下のように私の.HBM.XMLファイルに名前付きクエリを持っていると思う
<class name="Proposal" table="Proposal">
<id name="Id" column="ProposalId">
<generator class="identity" />
</id>
<property name="QuotationNumber" column="QuotationNumber" access="nosetter.camelcase-underscore" />
<set name="DataItems" table="ProposalData" inverse="true" cascade="save-update" access="nosetter.camelcase-underscore" lazy="true">
<key column="ProposalId" />
<one-to-many class="Fortron.Fastr.Domain.Proposal.ProposalData, Fortron.Fastr.Domain"/>
</set>
</class>
と
<class name="ProposalData" table="ProposalData">
<id name="Id" column="ProposalDataId">
<generator class="identity" />
</id>
<many-to-one name="Proposal" column="ProposalId" class="Fortron.Fastr.Domain.Proposal.Proposal, Fortron.Fastr.Domain" />
</class>
: は、特に2つのテーブルを持っていますプロポーザルがProposalDataを使用して1対多である場合、NHはプロポーザル・オブジェクトのそれぞれをロードし、それぞれのデータをコレクションとしてロードする必要があります。 残念ながら、私は各プロポーザルに複数のProposalDataがあるので、重複した結果に終わります。
これは問題ではありません。 ProposalDataが別のテーブルと一対一で対応すると、デカルト積が得られ、上記を期待することができます。
私は間違っていますか?誰でも光を当てることはできますか?
ありがとうございました。
Ahhhhhhhhhhh!プロポーザルは、各プロポーザルのProposalDataと同様に多くの結果を返すので、デカルト積が生成され、NHが上記のようにデータをロードする原因となります。 – TheITGuy