0

トピックが言うように。DALを提供するDLLがあり、特定のインスタンスでキャッシュを開始するようにしたいと思います。

上記のDLLは、asp.netアプリケーションとコンソールアプリケーションの両方で使用されます。

System.Runtime.Caching名前空間を使用したいのですが、asp.net環境へのすべての要求の最後にキャッシュを削除する必要があります。重要なのは、1回のリクエストで同じデータに対してDBに何度も戻らないようにすることです。複数のリクエストで存続する必要があるデータの、一般的なキャッシュメカニズムを探しているわけではありません。

System.Runtime.Cachingのこの特定の側面については、実際には何も見つからないようです。asp.netコンテキストで何を使用しますか?これを実行する方法はありますか?

静的メンバーをどこかで使用できることはわかっていますが、将来性がないため、そのように使用したくないと思います。

4

1 に答える 1

0

そのすべては、作成したキャッシュキーと有効期限にあります。あなたの例では、スライド式の有効期限を指定する必要があります(アイテムが変更されていない場合、経過期間後にキャッシュから削除されます)。

キャッシュキーには、その一部としてセッション/リクエスト固有のIDが必要です。

ユーザーごとまたはシステムごとではなく、リクエストごとにのみキャッシュするのは奇妙に思えます。スレッドローカルストレージのような他の形式のデータ共有を検討することをお勧めします。

于 2012-11-28T20:22:45.447 に答える