Ich habe eine Klasse namens Property
dieLast Sammlung von Objekt Einheit in nhibernate
public class Property : EntityBase<Property>
{
public IList<Room> _rooms;
Zimmer Mapping
public RoomMap()
{
Not.LazyLoad();
Id(x => x.ID).Not.Nullable().UnsavedValue(int.MinValue).GeneratedBy.HiLo("100");
Component(x => x.RoomDetails);
Map(x => x.RoomType).CustomType<RoomType>();
Component(x => x.Area);
//HasMany(x => x.RentPriceDetails);
}
Immobilien Karte
public PropertyMap()
{
Not.LazyLoad();
Id(x=>x.ID).UnsavedValue(int.MinValue).Not.Nullable().GeneratedBy.HiLo("100");
Component(x => x.Address);
References(x => x.OwnerOfProperty);
HasMany(x => x._rooms).Inverse().Cascade.All();
}
Was Sammlung von Room
Objekte hält Ich bin versuchen zu tun ist, Sammlung von Raumobjekten von selecte zu laden d Eigenschaftsobjekt. Ich verwende diese Syntax
var property = session.Query<Property>().FetchMany(x => x._rooms).First(x => x.ID == propertyId);
, aber nur Eigenschaft Objekt wird aus der Datenbank geladen. Die Zimmer werden in der Datenbank hinzugefügt, aber wie bekommt man sie? Wenn ich versuche, auf property.rooms zuzugreifen, ist die Sammlung leer.
Dank
GELÖST
Problem mit Inverse-Anweisung war. Ich verwende keine bidirektionalen Assoziationen, also habe ich es entfernt und es funktioniert.
Wenn Sie es gelöst haben, dann posten Sie es als Antwort selbst und markieren Sie es als richtig. Auf diese Weise wird es nicht in den Listen "Unbeantwortete Fragen" angezeigt. – RBarryYoung