0

EFフォーラムでこれを尋ねたところ、ここでも試すように提案されました....

この質問はマイクロソフト製品開発に関連している可能性がありますが、知識のある方は回答してください....

EF 5、POCO、Code First、C# の DbContext API を使用して SQL Server にアクセスし、将来的には Oracle にアクセスします。基礎となるデータベース機能、パフォーマンス、および制御にアクセスするには、ネイティブ SQL を使用する必要があることがわかりました。そのため、context.Database.SqlQuery と context.Database.ExecuteSqlCommand (SqlParameters を使用) をよく使用します。また、Begin Transaction と Commit/Rollback/Set Transaction を正確に制御する必要があります。

上記の SQL ネイティブ機能は、将来の EF バージョンで非推奨になり、削除される可能性がありますか?

ADO.Net を使用して EF の使用を忘れた方がよいでしょうか? それとも、ADO.Net は最終的に EF を支持して非推奨になるので、ほとんどネイティブ SQL アクセスを使用しているにもかかわらず、DbContext に固執する必要がありますか?

前もって感謝します

4

1 に答える 1

0

dapper などのマイクロ ORM を使用することをお勧めします。

これは、EF やその他の巨大な ORM と一緒に使用することも、単独で使用することもできます。これにより、一連の式典なしで直接 SQL を実行し、厳密に型指定されたオブジェクトにマップできます。また、内部で ADO.Net を使用します。ADO.Net はなくなりません。

このようなもの:

  var dog = connection.Query<Dog>("select * from dogs");

詳細なドキュメントはこちら: https://github.com/SamSaffron/dapper-dot-net

Stackoverflow 自体がデータ アクセスにこれを使用します。

于 2013-06-21T02:25:07.030 に答える