Ответ 1
По-видимому, у вас есть отношение "многие ко многим": заказ может иметь много элементов, и элемент может принадлежать множеству заказов. В реляционной базе данных вам нужно выразить это с помощью отдельной таблицы, которую, как я полагаю, у вас есть, - предположим, что эта таблица называется OrdersItems
.
Следуя примеру Store/Product из документации Fluent NHibernate, вы создадите свойство Items
в свойствах Order
и Orders
в Item
:
class Order
{
public virtual IList<Item> Items { get; protected set; }
}
class Item
{
public virtual IList<Order> Orders { get; protected set; }
}
И отображения:
public class OrderMap : ClassMap<Order>
{
public OrderMap()
{
HasManyToMany(x => x.Items)
.Cascade.All()
.Table("OrdersItems");
}
}
public class ItemMap : ClassMap<Item>
{
public ItemMap()
{
HasManyToMany(x => x.Orders)
.Cascade.All()
.Inverse()
.Table("OrdersItems");
}
}