Ich versuche, diese SQL-Abfrage in LINQ zu erstellen:LINQ Unterabfrage mit mehreren Spalten
SELECT *
FROM Policies
WHERE PolicyID IN(SELECT PolicyID
FROM PolicyRegister
WHERE PolicyRegister.StaffNumber = @CurrentUserStaffNo
AND (PolicyRegister.IsPolicyAccepted = 0
OR PolicyRegister.IsPolicyAccepted IS NULL))
Beziehungsdiagramm für die beiden Tabellen:
Hier ist mein Versuch so weit:
Ich denke, ich bin in der Nähe, werde wahrscheinlich zwei Listen erstellen und Inters verwenden ect() irgendwie, aber ich habe heute Morgen meinen Code angeschaut und dachte, dass es einen einfacheren Weg dafür geben muss. LINQ soll eine lesbare Datenbanksprache sein, oder?
Jede Hilfe wird sehr geschätzt.
db.Policies.Where (p => policyRegisterIds .Contains (p.PolicyID)) – jitender
versuchen 'policyRegisterIds.Contains (p.PolicyID)', aber Es ist besser, einen Join zu machen, um die Anzahl der Anfragen zu minimieren – ASpirin
Haben Sie eine virtuelle Beziehung zwischen "Policies" und "PolicyRegisters"? Fügen Sie die Strukturen in Frage – meorfi