多くのOrderItemを含むOrderマッピングがあります。Orderのみを保存すると、マッピングによってOrderとOrderItemの両方がデータベースに正しく保存されますが、その注文を再読み込みすると、注文に含まれるOrderItemのリストにnull値が入力されます(テーブル)Orderの外部キーを持つOrderItemに到達するまで。したがって、null注文アイテムの総数は、OrderItemsテーブルの行数になります(注文に関連する実際の注文アイテムは含まれません)。これが私のマッピングです:
注文:
<list name="OrderItems" table="OrderItems" cascade="all" inverse="true" >
<key column="OrderID"/>
<index column="OrderItemID" />
<one-to-many class="OrderItem" not-found="ignore" />
</list>
OrderItem:
<many-to-one name="Order" class="Order" column="OrderID" not-null="true" />
Orderのクラス実装は次のとおりです。
public class Order : {
private IList<OrderItem> orderItems = new List<OrderItem>();
nHibernateは関係の多くの部分としてリストをサポートしていないことを読みましたが、ロードではなく、保存は正しく機能します。これを機能させるには、すべてをセットに変換する必要がありますか?