In dem Bemühen, meine Repository-Ebene weiter zu abstrahieren, habe ich versucht, dem Code-First-Ansatz zu folgen, wie hier beschrieben: http://msdn.microsoft.com/en-us/magazine/ee236639.aspx.code first approach error: Der angegebene Typ member 'xxxxx' wird in LINQ to Entities nicht unterstützt.
Ich habe eine Viele-zu-viele-Beziehung zwischen Account- und Subscription-Entitäten. Eine Navigationseigenschaft existiert für jede Entität, die auf die andere verweist (z. B. Account.Abonnements).
Bevor ich mein eigenes Modell erstellt ich das Entity generierte Modell wurde mit und die unten geklappt hat („db“ ist der Kontext juristische Person):
public IQueryable<Account> GetBySubscriptionId(int subId)
{
return from a in db.Accounts
where a.Subscriptions.Any(s => s.SubscriptionId == subId)
select a;
}
jetzt das Modell für Konto wie folgt aussieht:
public class Account
{
public int AccountId { get; set; }
public string Name { get; set; }
// nav properties
public virtual List<Subscription> Subscriptions { get; set; }
}
Und wenn ich versuche, die gleiche LINQ Abfrage auszuführen jetzt bekomme ich diesen Fehler:
"The specified type member 'Subscriptions' is not supported in LINQ to Entities. Only initializers, entity members, and entity navigation properties are supported."
Irgendwelche Vorschläge sehr geschätzt.
Welche Version von Code First verwenden Sie und haben Sie Code-First-Mappings oder Konfigurationseinstellungen für diese beiden Entitäten? – DamienG
nicht Code First Vorlagen als solche verwenden, nur diese Art von Modell im Code deklariert. – user427875