1

要するに、MVC アプリが DB に対して読み取り/書き込みを行っている頻度を確認したいだけで、その方法がわかりません。. 要するに、以下を参照してください。


個人が Ruby on Rails と .Net MVC 4 (コード ファースト、エンティティ フレームワーク) を使用するチュートリアルに従っています。

RoR で、彼は、コントローラー アクションを記述した方法が、データベースに対して最大 400 回クエリを実行するため、最適ではないことを示しています。これを証明するために、彼は tail -f log/development.log を CLI に入力しました。確かに、ページを更新すると、何百行ものテキストがログに表示されました。

.Net MVC にこれに相当するものはありますか? コードからデータベースを悪用しているかどうかを知る方法はありますか? 私はまだ SQL に非常に慣れていないので、「SQL プロファイラーを使用する」などの文はあまり役に立ちません。申し訳ありません。

前もって感謝します。

4

1 に答える 1

2

Entity Framework を使用していると仮定します。私はその最近の熟考に追いついていませんが、私の知る限り、EF はロギングを簡単にサポートしていません。サンプル プロジェクトがあります。トレースのサポートを追加するMSDN コード ギャラリーで利用可能な Entity Framework のトレースとキャッシュを参照してください。まったく些細なことではありません。

ロギングをサポートている古き良き LinqToSQL を使用する場合は、例については「DataContext.Log プロパティを使用した LINQ to SQL のプロファイリング」を参照してください。

それでも、「SQL プロファイラーを使用する」場合は、はるかに優れた代替手段があります。おそらく、次の短いチュートリアル ビデオが役立つでしょう: SQL Server プロファイラー チュートリアル ビデオ

于 2012-08-08T08:30:32.413 に答える