Ich verwende Fluent NHibernate, um meine Entitäten automatisch zuzuordnen.Verwenden des AutoPersistenceModel von Fluent NHibernate, aber mit eifrigem Laden in einem einzelnen Objekt
Dies ist der Code, den ich für das Auto-Mapping:
new AutoPersistenceModel()
.AddEntityAssembly(Assembly.GetAssembly(typeof(Entity)))
.Where(type => type.Namespace.Contains("Domain") && type.BaseType != null && type.BaseType.Name.StartsWith("DomainEntity") && type.BaseType.IsGenericType == true)
.WithSetup(s => s.IsBaseType = (type => type.Name.StartsWith("DomainEntity") && type.IsGenericType == true))
.ConventionDiscovery.Add(
ConventionBuilder.Id.Always(x => x.GeneratedBy.Increment())
);
Das funktioniert ganz gut. Aber jetzt muss ich Eager Loading in einem einzigen Objekt meiner Domain haben. Gefunden this answer. Aber wenn ich die Linie .ForTypesThatDeriveFrom<IEagerLoading>(map => map.Not.LazyLoad())
, um den Code hinzuzufügen und führen Sie es erhalte ich die folgende Ausnahme:
- Fehler beim Versuch, das Mapping-Dokument für IEagerLoading
Hinweis zu bauen, dass ich mit einer Schnittstelle (IEagerLoading
) um die Objekte zu markieren, die ich gerne laden möchte.
Kann jemand helfen, wie man das macht? Denken Sie daran, dass ich die automatische Zuordnungsfunktion beibehalten möchte.
Dank