2

最近、2 つの MVC プロジェクトのマージが完了しました。新しいプロジェクトをデバッグしているときに、ほぼ突然、プロジェクト内の 1 つの領域がRegisterAreaメソッドを複数回起動し始めました。スタック トレースは、Application_StartAreaRegistration.RegisterAllAreasが 1 回だけ起動されていることを示していますが、内部では領域が 2 回インスタンス化されています。

単一のデフォルト ルートを除けば、AreaRegistration には異常はありません。

どこから解決策を探し始めればよいかわかりません。助けていただければ幸いです。

4

1 に答える 1

2

内部的に、MVC は Area に関連付けられたアセンブリをキャッシュし、このデータをファイルに書き込みます。このファイルを調べて、2 つのインスタンスが必要であると考える理由を確認できるはずです。

このファイルの詳細については、こちらの回答を参照してください。ただし、ファイルは で確認してくださいc:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\...\...\...\UserCache。作業しているプロジェクトの数によっては、このフォルダーはかなり忙しいかもしれませんが、ディレクトリの作成日で並べ替えることで、作成したばかりのサンプル プロジェクトを見つけることができました。このディレクトリの内容を削除しても、大きな害があるとは思いません。

于 2013-04-29T23:18:44.750 に答える