Entity Framework Core の dbData.Database.SqlQuery<somemodel>
メソッドは非推奨になり、データ マッピングとランキングの両方を必要とする生の SQL クエリを実行する際に困難が生じています。 dbData.Product.FromSql("SQL SCRIPT")
はオプションですが、ランク マッピング機能がありません。
EF Core のバージョンとソリューション:
EF Core 8 以降: SqlQuery
メソッドはスカラー値を返し、任意の型をサポートするようになり、古いアプローチは無効になります。
EF Core 3.0 以降: キーレス エンティティ タイプ (以前はクエリ タイプと呼ばれていた) がソリューションを提供します。 クラスに [Keyless]
の注釈を付け、FromSqlRaw
または FromSql
を使用してクエリを実行し、結果をマップします。
EF Core 2.1 以降: クエリ タイプは実行可能なアプローチを提供します。 DbContext
内で、DbQuery<T>
プロパティを定義します (T
は SQL クエリの列値の型を表します)。 次に、FromSql
と同様に DbSet<T>
メソッドを利用します。
以上がDbSet を使用せずに Entity Framework Core でランキングを使用して生の SQL クエリを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。