2

デフォルトでは、MVC3 サイトに追加されたミニ プロファイラーは、Find: Index というステップを報告します。ここで、Index は、View() へのコントローラーの呼び出しで設定された viewName パラメーターです。ビューが最初にヒットしたとき、このステップは簡単に 1 秒以上かかる可能性があり、その後のすべての呼び出しでは無視できます。

何が起きてる?ビューの完全なファイルパスと名前を指定しても違いがないため、ミニプロファイラーはこのステップの名前の選択または採用が不十分であることに罪があると思います。そういう意味で見つける。MvcBuildViews を true に設定しても役に立ちません。

4

1 に答える 1

4

私はこれについてここでブログを書きました: http://samsaffron.com/archive/2011/08/16/Oh+view+where+are+thou+finding+views+in+ASPNET+MVC3+

「検索」ステップには、最初の実行時の「ビュー コンパイル フェーズ」が含まれます。その後の実行では、非常に高速です (本当に悪いことが起こっていない限り)。また、非デバッグで実行するとさらに高速になることにも注意してください。

ビューをプリコンパイルすることでこのヒットを回避できますが、複雑になるためお勧めしません。

于 2012-05-19T13:08:50.433 に答える