Das sieht absolut gut aus. Wenn Sie jedoch das Prädikat mit LINQ to SQL verwenden möchten, sollten Sie Folgendes verwenden:
%Vor%Das bedeutet, dass der Lambda-Ausdruck in einen Ausdrucksbaum anstelle eines Delegaten umgewandelt wird - und dieser Ausdrucksbaum kann dann in SQL konvertiert werden.
Ja, das wird funktionieren.
Was Sie dem Compiler sagen, ist, dass Sie eine Funktion übergeben werden, die für ein User
-Objekt funktioniert, und ein bool
zurückgibt - wie die Funktion aussieht, liegt ganz bei Ihnen. Sie können ziemlich komplexe Verschachtelungstypen auch mit ors ( ||
) und ands ( &&
) erhalten, aber wenn es zu schwer wird zu sehen, was das Prädikat tut, sollten Sie das Refactoring in Betracht ziehen.
Aber im Grunde jedes Lambda, das zum Beispiel u
als ein User
-Objekt nimmt und es in einen Ausdruck verwandelt, der bool
zurückgibt, funktioniert.
Tags und Links c# linq lambda func predicates