Vergleichen Sie Nodatime-Perioden im EF-KernC#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Vergleichen Sie Nodatime-Perioden im EF-Kern

Post by Anonymous »

Ich erstelle eine Anwendung mit .NET (8), EF Core (8) und Postgres (16). Ich benutze Nodatime für jede Datum oder jede Uhrzeitbezogene Aufgabe und nodatime.period s werden in PG als Intervall gespeichert. Code> Konfigurationen. < /p>
EF ist so konfiguriert: < /p>

Code: Select all

services.AddDbContext(opt => opt.UseNpgsql(conn, npgOpt => { npgOpt.UseNodaTime() }));

So weit so gut ... jetzt möchte ich Datensätze abrufen, wobei (e => e.Period
übersetzt werden, da dieser Aufruf auf Datenbankebene relativ einfach ist

Code: Select all

SELECT * FROM "Entity" where "Period" > interval '8 hours'
) Ich frage mich, ob es eine Lösung gibt, um dies mit Linq zu abfragen.
ctx.Entities.FromRawSql("SELECT * FROM ""Entities"" where ""Period"" > interval '8 hours'").ToListAsync();
< /code>
funktioniert auch nicht, während die Abfrage die erwarteten Ergebnisse zurückgibt, wenn sie direkt ausgeführt werden - irgendwelche Ideen, wie man dies vorzugsweise ohne rohe SQL löst? < /p>
Eins mehr Ding ... Ich habe dieses GitHub-Coment gefunden, in dem zwei verschiedene Konfigurationen bezüglich der Nodatime für EF und NPGSQL erwähnt werden. Muss ich meine DB-Context-Konfiguration aktualisieren, um dieses Problem zu lösen?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post