Ich habe eine Elternklasse, Parent, die eine Eins-zu-Eins-Beziehung mit einer Kindklasse, Kind, hat.Instanz von Parent mit eins-zu-eins Kind hinzufügen
Wenn ich ein neues Parent hinzufüge, möchte ich gleichzeitig ein Child zum Parent hinzufügen.
Hier sind meine Klassen:
public class Parent
{
public virtual int Id { get; }
public virtual Child Child { get; set; }
}
public class Child
{
public virtual int Id { get; }
public virtual Parent Parent { get; set; }
}
ich NHibernate und die hasOne/one-to-one-Mappings hier skizzierte bin mit: https://github.com/jagregory/fluent-nhibernate/wiki/Fluent-mapping
Unten ist der Code aus meinem Griff() -Methode in mein AddParentRequestHandler:
var parent= new Parent();
var child = new Child()
{
Parent = parent;
};
parent.Child = child;
session.Save(parent);
Wenn dies ausgeführt wird, ich die folgende Fehlermeldung erhalten: Der Wert NULL kann nicht in die Spalte 'ChildId' eingefügt werden, Tabelle 'dbo.Parent'; Spalte erlaubt keine Nullen. INSERT fehlgeschlagen.
ChildId für Parent und ParentId für Child sind beide Felder, die keine Nullwerte enthalten können.
Gibt es eine Möglichkeit, dies zu beheben und diese Felder trotzdem nicht NULL-fähig zu halten? Vielen Dank im Voraus.
Sollte nicht die zweite Klasse Kind sein? – Shirkam
Ja. Korrigiert. Vielen Dank. – Sheppy