6

ASP.NET MVC でテーマを設定するための Chris Pietschmann のソリューションに従っています。

私が気づいたことの 1 つは、後続の要求でビュー名が ViewLocationCache から取得されていないことです。ASP.NET MVC 2.0 RC を使用しています

次のコードが実行されると:

this.ViewLocationCache.InsertViewLocation(controllerContext.HttpContext, cacheKey, virtualPath);

this.ViewLocationCache にカーソルを合わせると、{System.Web.Mvc.NullViewLocationCache} が返されるだけです - 何も追加されていないことを示唆していますか?

4

1 に答える 1

10

ViewLocationCacheデフォルトではリリースモードでのみ機能します(<compilation debug="false">で設定web.config)。

ViewLocationCacheデバッグモードで有効にするには:
から継承するカスタムビューエンジンで、ViewEngineのコンストラクターに次のようWebFormViewEngineに設定ViewLocationCacheします。

public MyCustomViewEngine()
{
    ViewLocationCache = new DefaultViewLocationCache();
}

必要に応じて、デフォルトのキャッシュタイムスパン値を上書きすることもできます。

于 2010-01-27T12:51:44.547 に答える