Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Fluent-NHibernate: How does one translate composite-element tag to fnh?

How do we express this in FNH?

<class name="Order" .... >
....
<set name="PurchasedItems" table="purchase_items" lazy="true">
    <key column="order_id">
    <composite-element class="Purchase">
        <property name="PurchaseDate"/>
        <property name="Price"/>
        <property name="Quantity"/>
        <many-to-one name="Item" class="Item"/> <!-- class attribute is optional -->
    </composite-element>
</set>

like image 768
epitka Avatar asked Jun 02 '10 18:06

epitka


1 Answers

This should do it:

HasMany(x => x.PurchasedItems)
  .Component(c =>
  {
    c.Map(x => x.PurchaseDate);
    c.Map(x => x.Price);
    c.Map(x => x.Quantity);
    c.References(x => x.Item);
  });
like image 166
James Gregory Avatar answered Jun 29 '23 04:06

James Gregory