私はdapper-dot-netを使用して、私のasp.net mvcアプリケーションのいくつかの領域を高速化しようとしています。私もEF5コードを使用しています。dapper-dot-netをEntity Frameworkで使用できますか?
dapperのドットネットはのIDbConnectionのためのちょうどいくつかの拡張機能であるので、私はちょうどDapperのドットネットを使用する
DbContext.Database.Connection
を使用することができますか?私はそれが動作していることをテストします。しかし、私はこれが正しい方法であるとは分かりません。特に私がその方法を使用すると、Entity Frameworkにはパフォーマンスに悪影響を与える影響がまだありますか?
ハードな経験に基づいて、「高速」とは「2〜3桁の速さ」を意味します。私は、Dapperに変換した後、Entity Frameworkで高度に最適化されたクエリを10分かかっていましたが、サイズと複雑さの20倍のクエリを完了するのに数分の1がかかりました:http://stackoverflow.com/questions/9350467/how- do-i-write-one-to-many-query-in-dapper-net/30080951#30080951を使用します。 – Contango
@Contango EFのAsNoTrackingでそれがありましたか? –
@Ian Warburtonわかりませんが、DapperのパフォーマンスはEntity Frameworkをほこりの中に残しています。 Dapperは主にデータの読み込みを目的としているため、データベースに書きたい場合は、10人の同時ユーザーをサポートできる非効率で平凡なパフォーマンスがあれば、Entity Frameworkが機能するでしょう。 – Contango