2011-06-26 2 views
5

Entity Frameworkは問題ありませんが、一部のクエリは最適ではありません。手で、あるいはMS SQL Server 2008 R2のビューとしていくつかのSQLクエリを書くことができますか?これを選択して実行して、何らかのエンティティを関連付けることができますか?私はいくつかの生成されたSQLを検討し、彼らはかなり醜いです...エンティティフレームワークの最適化

質問2:MS SQL Server 2008 R2のクエリをキャッシュですか?私は強力なキャッシングをしたいのですが、どうすれば調整できますか? (MySQLはとても簡単です)。

+0

ビューから選択することができます。さらに制御が必要な場合は、SQL文をストアドプロシージャに配置し、Entity FrameworkのSQLステートメントを使用できます(特にINSERT、UPDATE、DELETE操作に便利です)。また、SQL Serverはキャッシュを大量に使用し、最も多く使用されているページをメモリに保持するための多くの努力を払っています –

答えて

5

あなたにはさまざまなオプションがあります。 EF 4.1で.ExecuteStoreCommand()を使用してデータベースに対してSQLを実行するか、ストアドプロシージャをEFにマップすることもできます。さらに、必要であれば、ビューをEF内のエンティティとしてマップできます。

SQL Serverには、データページと実行計画のための非常に洗練されたキャッシュメカニズムがあり、開発者にとってはかなり自動化されています。私はあなたが最適化したい操作で具体的な例題と質問を投稿することをお勧めします。