Wie verwenden von Datums-Funktion in LINQ to entities?
Meine Methode soll zurückgeben einer Liste von Notizen, also machte ich es wie folgt:
var saturday = DayOfWeek.Saturday;
var query = from note in userNotes
where note.NoteDate > lastMonth && note.NoteDate.DayOfWeek != saturday
select note;
Aber ich bekomme diese Fehlermeldung:
Den angegebenen Typ member 'Date' wird nicht unterstützt LINQ to Entities. Nur Initialisierungen, die juristische Mitglieder und entity navigation Eigenschaften.
Irgendwelche Ideen, wie kann ich vergleichen, Tag der Woche mithilfe von linq?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden
SqlFunctions.DatePart
statische Methode. Es wird umgewandelt inDATEPART
TSQL-Funktion aufrufen.EntityFunctions
.SqlFunctions
Klasse: Stellt der common language runtime (CLR) - Methoden, die Funktionen aufrufen, die in der Datenbank in LINQ to Entities Abfragen.DatePart
ist abhängig von der "ersten Wochentag festlegen" in der SQL Server und ein alternativer Ansatz ist hier: c-sharp-snippets.blogspot.de/2011/12/...EntityFunctions
die Anbieter/Datenbank-unabhängig, währendSqlFunctions
funktioniert nur mit dem SQLClient - /SQL-Server (außer, dass man möglicherweise hat, eine andere zu wählen (vielleicht später) Referenz Jahr als 1753 für die Unterstützung anderer Datenbanken gleich gut).Als ich mit Oracle, den ich nicht nutzen konnte
SqlFunctions
Klasse. Schließlich fand ich eine einfache Lösung für dieses problem:QUELLE: link