Ich möchte der DDD-Philosophie folgen und nicht direkt auf Entitätsobjekte eines Aggregats zugreifen. Also muss ich das Root-Objekt aufrufen, um die zugehörige Entity zu erhalten. Aber in anderen Fällen möchte ich nicht immer jede assoziierte Entität laden, wenn die Wurzel aufgerufen wird. Ist das der Zweck des faulen Ladens?Zugriff auf Aggregat-Entities ohne Lazy Loading
Wie greife ich auf Entitätsobjekte über das Stammverzeichnis zu, ohne jedes zugeordnete Objekt jedes Mal zu laden, wenn ich das Lazyloading-Feature von linq deaktiviere?
EDIT:
Zum Beispiel, Wenn ich eine Person als die Root-Entität, und die Person hat Namen, Adressen und OwnedProperties. Wenn ich eine Liste von Personen erhalten möchte, damit ich ihre Namen anzeigen kann, möchte ich nicht unbedingt Ownership-Eigenschaften laden jedes Mal auf den Aufruf des Repository. Umgekehrt möchte ich auf einer anderen Seite möglicherweise eine Liste von OwnedProperties anzeigen, möchte aber nicht, dass die anderen Informationen mit dem Aufruf geladen werden. Was ist der einfache Weg, die Person nur ohne die Eigentumseigenschaft entity aufzurufen, außer ein neues Personenobjekt ohne diese eigenen Eigenschaften zu erstellen?
können Sie ein konkretes Beispiel geben? –
Wahrscheinlich nicht. DDD ist eine jener vagen Prinzipien, die keine konkreten Beispiele haben. – cletus
@Cletus, es gibt viele konkrete Beispiele .. siehe das Evans-Buch ... –