Ich habe eine PostgreSQL-Datenbank, die über Entity Framework Code First mit dem Programm interagiert.
Die Datenbank enthält eine Tabelle "Benutzer" mit der Spalte "Besuch" von DateTime.
Die Anwendung wird wie folgt beschrieben:
%Vor%Ich versuche diese Abfrage auszuführen;
%Vor% Aber eine Ausnahme bekommen: NotSupportedException
Was ist los?
DateTime.Date
wird nicht unterstützt. Sie müssen stattdessen die Methode SqlFunctions.DatePart
verwenden. Es wird mit DATEPART
TSQL
-Methode innerhalb der generierten SQL-Abfrage enden.
Verwenden Sie die Klasse EntityFunction zum Trimmen des Zeitabschnitts.
%Vor%Quelle: Ссылка
Das Problem besteht darin, dass der LINQ-Provider versucht, DateTime.Now.Date
in eine Datenbankmethode zu konvertieren, was standardmäßig nicht möglich ist. Der Trick beim Durchführen eines Datumsvergleichs besteht darin, eine DateTime
-Instanz zu erstellen, deren Zeitkomponente auf den Standardwert gesetzt ist. Weitere Informationen erhalten Sie hier und hier .
Tags und Links c# datetime linq-to-entities