-1

私はNHibernateのマッピングNHibernateのnappingではinverseとreadonlyの属性は何をしますか?

HasMany(entity => entity.Tasks).KeyColumn("APPLICATION_ID").Cascade.AllDeleteOrphan().ReadOnly().Inverse(); 

それは、私は逆を使用していくつかのいずれかを参照し、読み取り専用ので、誰も私にそれを説明することができ下さい属性の私にとっては初めてのことですが、このラインを見てきたプロジェクトを働いていますが。

+2

[NHibernateので逆属性]のhttps://stackoverflow.com/questions/713637/inverse-attribute-in-nhibernate –

+0

可能な重複(https://stackoverflow.com/questions/713637/inverse-attribute- in-nhibernate) –

+0

'inverse'の合理的な背景は、[NHibernate reference](http://nhibernate.info/doc/nhibernate-reference/collections.html#collections-bidirectional)でさらに詳しく述べられています。これは、双方向性協会。 'Readonly'は[ここ](http://notherdev.blogspot.fr/2012/01/mapping-by-code-set-and-bag.html)で説明されているように、' mutable = "false" 'の短縮形です。 。 [ask]を参照してください、あなたは尋ねる前にいくつかの研究をすることになっています。 –

答えて

0

あなたは逆here

TLDRの詳細な説明を見つけることができます。リンクから

  • 逆にかかわらず、コレクションの役割のコレクションで マッピングを置くことができるブール属性は、(すなわち内の1対多、 多対多など)上、およびマッピングを結合する。

  • many-to-oneやone-to-oneのような他のリレーションタイプを逆にすることはできません。

  • デフォルトでは、inverseはfalseに設定されています。
  • 逆は一方向の関係にはほとんど意味がありません。双方向の関係にのみ使用されます。
  • 一般的に、各双方向関係のちょうど片側にinverse = "true"を使用することをお勧めします。
  • inverseを設定しないと、NHProfは余分な更新について不満を持ちます。読み取り専用

    TLDRため

そして、このlink

いくつかのプロパティとプロパティ名とマップ名の異なる名前を付けた唯一の違いは、FNHで使用できるReadOnlyメソッドです。 これは、単に.Not.Insert()と.Not.Update()の両方を設定するためのショートカットです。

+0

コレクションマッピングに 'update'または' insert'属性はありません。コレクションの場合、Fluent 'ReadOnly'は' mutable = "false" 'の短縮形です。 –

関連する問題