2009-04-27 19 views
3

私はWeb用でない用途にSystem.Web.Caching.Cacheの使用を提唱いくつかの記事/ブログの記事を見てきました、しかし、MSDN documentationは非常に明確に述べているWinFormsアプリケーションでSystem.Web.Caching.Cacheクラスを使用しないでください。

CacheクラスASP.NETアプリケーションの外部での使用を目的としていません。これは、ASP.NETでの使用のために設計されテストされており、Webアプリケーションのキャッシュを提供します。コンソールアプリケーションやWindowsフォームアプリケーションなど、他の種類のアプリケーションでは、ASP.NETキャッシュが正しく機能しない可能性があります。

ドキュメントは間違っているか、実際にこのクラスを使用しないでください。後者の場合、何がうまくいかないでしょうか?当社のプラットフォームはWinforms/.NET 3.5です。

答えて

0

文書は正しいです、あなたはWindowsアプリケーションでasp.netキャッシュを使用することはできません。

Cache article

6

期限切れまたは未使用のキャッシュオブジェクトを自動的に削除することはできません。したがって、CacheオブジェクトがASP.NET外で使用されている場合、Cacheオブジェクト用に予約されているシステムメモリは解放されません。メソッドが内部としてマークされ、内部使用が意図されているため、内部ASP.NETメソッドを手動で呼び出してキャッシュをクリーンアップすることはできません。だからあなた自身のリスクでそれを外部のアプリケーションで使用することを決定しました。 System.Web.Caching.Cache object

スコットHanselman氏は

+1

スコットHanselman氏による記事がnon-ASP.netアプリケーションでこれを使用しての賛成であるように私には思える詳細は、その上にarticleポストを持っています。 – Eyvind

+1

また、.NET 1.0と1.1についてのサポート記事も紹介しています。これは3.5のために変更できましたか? – Eyvind

+0

それは好意ではなく、それはそれが悪いとは思っていませんでした、そして、私はそれがどんなバージョンの.Netであるか分かりませんが、それはちょうど詳細情報を与えるために含まれていました。 OP – TStamper

関連する問題