forked from nhibernate/nhibernate-core
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMasterDetail.hbm.xml
77 lines (77 loc) · 2.66 KB
/
MasterDetail.hbm.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
<?xml version="1.0"?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" default-lazy="false">
<class name="NHibernate.DomainModel.Master, NHibernate.DomainModel">
<meta attribute="foo">foo</meta>
<id column="master_key_column" type="Int64">
<generator class="native"/>
</id>
<!--TODO: make sure this type has an equiv .net type-->
<version name="version" type="Timestamp" column="ts_" access="field" unsaved-value="1/1/0001"/>
<property name="Name">
<meta attribute="bar">bar</meta>
<meta attribute="bar">bar2</meta>
</property>
<property name="X"/>
<!--
length="5"
<column name="big_dec" sql-type="DECIMAL(5,3)"/>
-->
<!--
TODO: Find .net equiv
<property
name="BigDecimal"
type="Decimal(5,3)"
column="big_dec"
/>
-->
<set name="Details" inverse="true" lazy="true" order-by="i asc">
<key column="master_key"/>
<one-to-many class="NHibernate.DomainModel.Detail, NHibernate.DomainModel"/>
</set>
<set name="MoreDetails" cascade="all" lazy="true" order-by="i desc">
<key column="more_master_key"/>
<one-to-many class="NHibernate.DomainModel.Detail, NHibernate.DomainModel"/>
</set>
<set name="Incoming" lazy="true" table="mtm">
<key foreign-key="AA" column="outgoingabcdef"/>
<many-to-many class="NHibernate.DomainModel.Master, NHibernate.DomainModel" foreign-key="BB">
<column name="incomingabcdef" index="IBB"/>
</many-to-many>
</set>
<set name="Outgoing" lazy="true" table="mtm" inverse="true">
<key column="incomingabcdef"/>
<many-to-many class="NHibernate.DomainModel.Master, NHibernate.DomainModel" column="outgoingabcdef"/>
</set>
<many-to-one name="OtherMaster"/>
</class>
<class name="NHibernate.DomainModel.Detail, NHibernate.DomainModel">
<id column="detail_key" type="Int64" unsaved-value="0">
<generator class="native"/>
</id>
<property name="X">
<column name="x" unique-key="uk" not-null="true"/>
</property>
<property name="I">
<column name="i" unique-key="uk" not-null="true"/>
</property>
<many-to-one name="Master" foreign-key="CC">
<column name="master_key" unique-key="uk" not-null="true"/>
</many-to-one>
<set name="SubDetails" lazy="true" cascade="all">
<key column="detail_key"/>
<one-to-many class="NHibernate.DomainModel.SubDetail, NHibernate.DomainModel"/>
</set>
</class>
<class name="NHibernate.DomainModel.SubDetail, NHibernate.DomainModel">
<id column="subdetail_key" type="Int64">
<generator class="native">
<param name="sequence">fooseq</param>
</generator>
</id>
<property name="Name"/>
</class>
<query name="all_details"><![CDATA[
from d in class
NHibernate.DomainModel.Detail
]]></query>
</hibernate-mapping>