元のsqlクエリを実行するためにエンティティフレームワークコアでdbsetする必要はありません
エンティティフレームワークコアでは、DBSETに依存しないプリミティブSQLクエリがより困難になります。従来の
メソッドが削除されており、開発者はSQLクエリ検索データを使用するための代替方法を見つける必要があります。
dbData.Database.SqlQuery<somemodel>
ef Core 8は、スカラー値と元のSQLクエリの任意のタイプを返すことをサポートするメソッドを導入します。この方法により、SQLクエリを直接実行し、結果を必要なタイプにマッピングできます。
SqlQuery
EF Core 3.0の場合、キーレスエンティティタイプ(以前はクエリタイプと呼ばれていました)を使用できます。これらのタイプは、特定のデータベーステーブルにマッピングされず、データの取得を許可しません。キーフリーの物理タイプを定義するには、モデル構成で
メソッドを使用します。
[Keyless]
EF Core 2.1リリース候補1では、クエリタイプが導入されました。これらのタイプは、メインキーなしでデータベースビューまたはテーブルにマッピングされた一時的なクエリのリターンタイプとして使用されます。 dbcontextにHasNoKey()
属性を定義してクエリタイプを表し、
例:
概要FromSql()
DbQuery<t>
これらの方法は、DBSETに依存せずにエンティティフレームワークコアで元のSQLクエリを実行するためのさまざまな方法を提供します。あなたとEFコアバージョンに最適な方法を選択します。 FromSql
以上がDbSet を使用せずに Entity Framework Core で生の SQL クエリを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。