1
我一直在嘗試爲我的電子商務應用程序使用DDD樣式。我的大部分業務邏輯都是使用假存儲庫來實現的。現在,我想使用NHibernate將我的域模型綁定到真正的數據庫。nhibernate映射Ilist與複合元素
我有一個包含OrderLines列表的Order類對象
public IList<OrderLine> OrderLines{ ... } //line 1
在我的訂單行類我父訂單的引用如下
2. public Order Order { set; get;} // line 2
根據我的瞭解,訂單行是一個Value類而不是實體類,所以我將使用複合元素來執行映射。
<bag name="OrderLines" table="OrderLines" lazy="true">
<key column="Order_ID"/> <!--This is where I got confused. line 3-->
<composite-element class="OrderLine">
<!-- class attribute required -->
<many-to-one name="Order" class="Order" column="Order_ID"/> <!--Do I need this? line 4-->
...
</composite-element>
</bag>
請注意,在第3行中,我爲映射創建了一個關鍵元素(語法需要此操作)。但是由於我在OrderLine類(第2行)中定義了對Order類的引用,我是否還需要在第4行創建映射?