我'新NHibernate和我有個任務,加強項目與existinig implementation.The目前的設計是直線前進,如「第一個項目」:多個一對多關係映射
store(1)->(many)Employee
現在我想這樣做:
store(1)->(many)Employee AND
Empoyee(1)->(many)Child
重新實現從商店員工的映射邏輯員工,兒童不能正常工作。 試圖找到在網上類似的東西enter code here
但沒有運氣。 任何關於映射的提示非常感謝。
感謝
@MeckLey:非常感謝 爲響應 - 我想使用持久性規範examples..in僞IAM做類似測試映射:
new PersistenceSpecification<Child>(_session, new CustomEqualityComparerChild())
.CheckProperty(c => c.Name, "Child1Name")
--other Child prperties--
.CheckReference(c => c.Employee, new Employee{
Store = new Store{--store properties--},
--other Employee Properties--
});
外交鍵不應該有空的列被插入空值。我儘量使測試,以便按照正確的順序是創造了一切:
Store->Employee->Child
..但我不
@Meckley好吧,這裏是真實的東西..「存儲」是「ReturnOrder」 「僱員」是「ReturnOrderLineItem」和「子女學費」是「ReturnOrderReplacementItem」 的類遵循「FirstExample」和映射的具體結構如下:
public ReturnOrderMap()
{
Id(x => x.Id);
Map(x => x.OrderTrackingNumber);
Map(x => x.UserId);
HasMany(x => x.ReturnOrderLineItems).Inverse().Cascade.AllDeleteOrphan();
}
public ReturnOrderLineItemMap()
{
Id(x => x.Id);
Map(x => x.Sku);
Map(x => x.Status);
Map(x => x.Comments);
HasMany(x => x.ReturnOrderReplacementItems).Inverse().Cascade.AllDeleteOrphan();
References(x => x.ReturnOrder);
}
public ReturnOrderReplacementItemMap()
{
Id(x => x.Id);
Map(x => x.Quantity);
Map(x => x.Size);
References(x => x.ReturnOrderLineItem);
}
我會跳過映射測試和試看看它是否真的有效,也許你不能測試一些東西像這樣與PesristenceSpecification ..
員工與孩子之間的關係與店鋪與員工之間的關係無關。也就是說,將員工與孩子聯繫起來的機制,反之亦然。 到目前爲止您嘗試過哪些功能失敗? – 2011-12-22 13:24:26
感謝您的迴應 - 我正在嘗試使用Persistent規範示例測試Maping .in僞代碼iam正在執行類似如下操作: – Nikos 2011-12-22 13:46:10
請更新您的原始帖子,而不是將代碼輸入註釋。 – 2011-12-22 13:54:52