Das Include funktioniert nicht, nachdem ich eine Auswahl für die IQueryable-Abfrage durchgeführt habe. Gibt es einen Weg dazu? Meine Abfrage ist
%Vor%Ich versuche dann, mya ViewModel in meiner WebUI-Ebene mit dem folgenden Code zu füllen
%Vor%Das Problem tritt jetzt in meinem neu erstellten NetworkViewModel auf Die Contacts-Auflistungsobjekte enthalten keine geladenen Daten für RelationshipSource.Target oder RelationshipSource.Source
Die Daten sind jedoch vorhanden, wenn sie von der ursprünglichen Repository-IQueryable-Methode ausgeführt werden. Die zugehörigen Include-Daten scheinen jedoch nicht in die neue Contacts-Sammlung übertragen zu werden, die erstellt wird, wenn ich den obigen Befehl "Select New NetworkViewModel {}" verwende.
Gibt es eine Möglichkeit, diese Include-Daten beizubehalten, wenn sie an ein neues Objekt übergeben werden? Im Moment bekomme ich immer NULL Ausnahmen
Hier ist eine Erklärung für das, was passiert, mit einem Workaround .
In Ihrem Fall, denke ich, gibt es jedoch eine bessere Problemumgehung als in diesem verlinkten Artikel. Sie verwenden bereits ein Ansichtsmodell für Network
. Das ist gut! Tue es auch für den Kontakt (und die damit verbundenen Eigenschaften), und deine Probleme mit eifrigem Laden werden auf magische Weise verschwinden. Projektion immer funktioniert.
Tags und Links entity-framework include linq-to-entities anonymous-types