をNOTFOUND:流暢NHibernateはHasManyToManyと私は、次のFNHマッピングフラグメントを持つ
次HBMを生産HasManyToMany((c) => c.Plaintiffs)
.LazyLoad()
.WithTableName("invoicePlantiff")
.WithChildKeyColumn("PersonReferenceID")
.WithParentKeyColumn("invoiceID")
.FetchType.Join();
:
<bag name="Plaintiffs" access="iServe.Design.CslaNHibernate.CslaChildPropertyAccessor, iServe, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" lazy="true" table="invoicePlantiff">
<key column="invoiceID" />
<many-to-many column="PersonReferenceID" class="iServe.PersonReference, iServe, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" fetch="join" />
</bag>
問題は、私がある、聞かせてレガシーデータを扱っていますということです私たちはちょうど「理想よりも低い」と言っています。レコードの中には無効なIDがあるものがありますので、バッグ内のmany-to-manyタグにnot-found="ignore"
属性を入れる必要があります。私はFNHでこれを達成する方法は見当たりません。
References()
コールには.NotFound.Ignore()
がありますが、HasManyToMany
コールにはありません。
誰かが私に行方不明を教えてもらえますか? NHを設定する前に属性をレンダリングした後に属性を挿入するためのハックであっても、それを動作させるだけです。
ありがとうございます。
UPDATE gcoresの回答はうまくいかず、間違ったタグに追加されます。詳細については私のコメントをご覧ください。
実際には、 'bag'に属性を追加して無効にしたために動作しているgcoresです。それはバッグの中の「多対多」に行く必要があります。 –