Entity Framework Core -Methode wurde veraltet und verursacht Schwierigkeiten bei der Ausführung von RAW -SQL -Abfragen, bei denen sowohl Datenzuordnung als auch Ranking erforderlich sind. Während dbData.Database.SqlQuery<somemodel>
eine Option ist, fehlen es keine Rank -Mapping -Funktionen. dbData.Product.FromSql("SQL SCRIPT")
EF -Kernversionen und Lösungen:
EF Core 8 und später: Die -Methode gibt jetzt Skalarwerte zurück und unterstützt willkürliche Typen, wodurch ältere Ansätze unwirksam werden. SqlQuery
EF Core 3.0 und später: Keyless -Entitätstypen (früher als Abfragetypen bekannt) liefern eine Lösung. Annotieren Sie Ihre Klasse mit und verwenden Sie [Keyless]
oder FromSqlRaw
, um Ihre Abfrage auszuführen und die Ergebnisse zuzuordnen. FromSql
EF Core 2.1 und später: Abfragetypen bieten einen praktikablen Ansatz. Definieren Sie in Ihrer eine DbContext
-Mobilie (wobei DbQuery<T>
den Typ für die Spaltenwerte Ihrer SQL -Abfrage darstellt). Verwenden Sie dann die Methode T
wie mit FromSql
. DbSet<T>
Das obige ist der detaillierte Inhalt vonWie kann ich Roh-SQL-Abfragen mit Ranking in Entity Framework Core ausführen, ohne DbSet zu verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!