2012-03-29 9 views
1

データベースに格納されたビューを提供するMVC3アプリケーションがあります。私はVirtualPathProviderを作成し、私のGetFileFileExistsの方法で私はデータベースに行き、正しいものを返します。ここまでは順調ですね。データベースからキャッシュされたMVC 3ビューのキャッシュ

私はGetFileから返すビューをキャッシュします。私はMVCがすでにいくつかのビューキャッシングをしていることを理解しており、私たちはGetCacheDependencyメソッドを使っていくつかのコントロールを持っています。しかし、これ以上のコントロールはありますか?たとえば、そこにカスタムキャッシュを使用できますか?私の場合は、ローカルファイルシステムのビューをキャッシュし、自分のキャッシュ無効化を行うことに興味があります。

私のGetFileメソッドで簡単に行うことができますが、MVCでこれに対して自然な拡張性の点がある場合は、むしろ代わりに使用します。

おかげ

答えて

1

私はあなたの質問に気づいた何かを見ていて、答えられていません。 GetFileHash()GetCacheDependency()を上書きする必要があります。 ASP.NETキャッシュを無効にするには、自分でCacheDependencyを実装する必要があります。

+0

あなたは正しいparshですが、私は質問を投稿した後にそれを見つけ出し、それを更新するのを忘れました。 GetFileHashまたはGetCacheDependencyのどちらかをオーバーライドすることで、あなたができることが印象に残っていましたが。私たちはGetCacheDependencyだけでそれを行いました。 – Pedro

0

どちらかOutputCacheAttribute

http://msdn.microsoft.com/en-us/library/system.web.mvc.outputcacheattribute.aspx

を使用するか、そこから派生してみてください。

+0

私はそれが同じものだとは思わない。 AFAIK、出力キャッシュはレンダリングされたビューの結果をキャッシュします。ビューキャッシュは、レンダリングの前に生のビューの内容をキャッシュします。 – Pedro

+0

ああ、申し訳ありません。気づかなかった –

関連する問題