2009-07-20 22 views
2

Ich habe zwei Tabellen eingerichtet als Eltern/Kind zB Kunde und Adresse (entweder einen Datensatz, der sowohl Rechnungs-und Versand-Datensatz oder 2 Datensätze - eine Abrechnung und ein Versand-Datensatz) . Das Speichern eines neuen übergeordneten Kindes ist kein Problem. Das Problem tritt auf, wenn der Benutzer seine Daten aktualisieren muss. Er hat zwei Adressen, die er bei seiner Registrierung angegeben hat. Auf dem Bearbeitungsbildschirm sagt er nun, dass seine Rechnungsadresse mit der Lieferadresse übereinstimmt. Wie lösche ich die zweite Adresse und aktualisiere seine Daten in einer anderen Adresse und in den Kundendaten.Eltern Kind (Speichern, Aktualisieren und Löschen)

Danke für Ihre Hilfe.

+0

Hallo, Vielen Dank für Ihre prompte Antwort. Ich werde die Änderungen vornehmen und Sie wissen lassen, ob es funktioniert. – Teclioness

Antwort

1

Sie tun dies in einem transaction.

begin transaction 
    delete second address. 
    update first address 
    update other details. 
end transaction 

Das Beispiel, das Sie auf dieser Seite in interessiert sein könnte, ist:

// foo is an instance loaded by a previous Session 
foo.Property = "bar"; 
session = factory.OpenSession(); 
transaction = session.BeginTransaction(); 
session.SaveOrUpdate(foo); 
session.Flush(); 
transaction.Commit(); 
session.Close(); 
+0

Sie sollten Blöcke für Sitzungen und Transaktionen verwenden;) –