Ich habe eine Viele-zu-viele-Beziehung zwischen Konten und PaymentSystems. Ich möchte alle Zahlungssysteme auflisten, die noch keinem Konto zugeordnet sind. Um das zu erreichen, ich versuche, die folgende LINQ to Entities-Abfragen zu verwenden:Wie mache ich eine "Excess" LINQ to Entities Abfrage?
PaymentGatewayEntities pge = new PaymentGatewayEntities();
Account account = pge.Accounts.Single(item => item.id == accountId);
var paymentSystems = pge.PaymentSystems.Except(account.PaymentSystems);
Allerdings erhalte ich die folgende Ausnahme bei dem Versuch, die Ergebnisse anzuzeigen: „System.NotSupportedException: Nicht imstande, einen konstanten Wert von zu erstellen Geben Sie 'MyNamespace.Models.PaymentSystem' ein. Nur primitive Typen ('wie Int32, String und Guid') werden in diesem Kontext unterstützt. " Was mache ich falsch? Ich benutze EF4.
UPD: var paymentSystems = pge.PaymentSystems.Wobei (item =>! Item.Accounts.Contains (account)) in derselben Ausnahme auch resultiert.