Laden...

Nhibernate Mapping problem

Erstellt von d.gierse vor 15 Jahren Letzter Beitrag vor 15 Jahren 625 Views
D
d.gierse Themenstarter:in
115 Beiträge seit 2006
vor 15 Jahren
Nhibernate Mapping problem

verwendetes Datenbanksystem: SQL-Server 2005

Hallo zusammen,

ich habe eine Anwendung mit NHiobernate, in der ich verschiedene Aufträge verwalte.
Die Aufträge sind einem Projekt zugeordnet.
Zu den Aufträgen gehören jeweils eine Messung (Measurement1) und eine Kontrollmessung (Measurement2)
Die Messungen wiederum enthalten eine IList von Messwerten.

Ich habe dafür die folgenden Mappings angelegt:

Auftrag:

<class name="Task">
<id name="ID" column="ID" >
<generator class="native" />
</id>
<many-to-one name="Project" class="Project" column="ProjectID" cascade="all" />
<property ... />
<property ... />
<many-to-one name="Measurement1" class="Measurement" column="Measurement1ID" cascade="all" lazy="false" />
<many-to-one name="Measurement2" class="Measurement" column="Measurement2ID" cascade="all" lazy="false" />
</class>

Messung:

<class name="Measurement">
<id name="ID" column="ID" >
<generator class="native" />
</id>
<property ... />
<bag name="Values" cascade="all" lazy="false" inverse="true">
<key column="MeasurementID" />
<one-to-many class="MeasurementValue"/>
</bag>
</class>

Messwert:

<class name="MeasurementValue">
<id name="ID" column="ID" >
<generator class="native" />
</id>
<property name="Timestamp" not-null="true" />
<property name="SensorNr" not-null="true" />
<property name="Value" not-null="true" />
<property name="State" />
</class>

Zum einen weiss ich nicht genau, ob das Mapping zwischen Auftrag und Messung stimmt. Ich habe ja in Auftrag 2 verweise auf die gleiche Klasse / Datenbanktabelle. Dazu hab ich keine Anleitung gefunden.

Zum anderen kann ich keinen Auftrag speichern. Wenn ich mit Session.Save() den Auftrag speichern will läuft er in eine Art Endlosschleife. Ich bekomme keine Exception, aber das PRogramm hängt an dieser Stelle.
Was muss ich am Mapping korrigieren?