Probleme beim Laden mehrerer Ebenen mit Entity Framework Plus


Frage

Ich habe Probleme mit Entity Framework Plus. Ich kann nicht scheinen, dass das Laden mehrerer Ebenen funktioniert.

Die folgende Abfrage funktioniert einwandfrei. Ich bekomme den Benutzer mit der erwarteten Liste von Adressen zurück.

var user = _dataContext.Users
                .Where(u => u.UserName == username)
                .IncludeFilter(u => u.Addresses.Where(a => !a.Deactivated.HasValue))
                .SingleOrDefault();

Die folgende Abfrage führt jedoch dazu, dass sie auseinander fällt.

var user = _dataContext.Users
                .Where(u => u.UserName == username)
                .IncludeFilter(u => u.Addresses.Where(a => !a.Deactivated.HasValue))
                .SingleOrDefault();

Ich bekomme den Benutzer zurück, aber jetzt ist meine Liste der Adressen leer.

Ich verwende EF6 und EF + v1.7.14.0

Vielen Dank im Voraus an alle, die helfen können.

Prost Craig

Beliebte Antwort

Arrgh! Was für ein Rausch! Ich muss es in zwei Aussagen machen ... was wirklich Sinn macht. Ich wählte den Adresstyp aus und ließ die Adresse zurück.

Meine Abfrage muss wie folgt sein:

var user = _dataContext.Users
                .Where(u => u.UserName == username)
                .IncludeFilter(u => u.Addresses.Where(a => !a.Deactivated.HasValue))
                .IncludeFilter(u => u.Addresses.Where(a => !a.Deactivated.HasValue).Select(a => a.AddressType))
                .SingleOrDefault();

Danke mir. Du bist ein Champion!





Lizenziert unter: CC-BY-SA
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum