2011-07-20 9 views
7

ObjectCacheクラスは.NET Framework 3.5に含まれていますか?.NET FrameworkのObjectCache

もしそうでなければ、キャッシュにオブジェクトを格納するための代替手段がありますか?(asp.netではないWindowsアプリケーションの場合)?

また、ObjectCacheクラスの使い方を示すオンラインリソースやコードスニペットは誰にもありますか?

答えて

3

ObjectCacheは、.NET Framework 4で導入されました。以前のフレームワークを使用している場合は、Microsoft Entreprise Library cachingを使用できます。

not intended asp.netアプリケーションの外で使用されるため、HttpRuntime.Cacheを使用することはお勧めできません。

+1

ちょうど追加するには、 AppFabric(エンタープライズレベルのキャッシュ)や独自のキャッシュシステムを作成することもできますが、なぜホイールを再発明するのでしょうか? ;-) –

3

あなたがSystem.Webアセンブリを参照している場合あなたはまだWinFormsのアプリケーションでASP.NET cacheを使用することができます.NET Frameworkの3.5

を含まObjectCacheクラスです:

HttpRuntime.Cache["key"] = "value"; 

より詳細なプロパティを定義する場合は、

HttpRuntime.Cache.Add(
    "key", 
    "value", 
    null, 
    DateTime.MaxValue, 
    TimeSpan.FromSeconds(3), 
    CacheItemPriority.High, 
    new CacheItemRemovedCallback(OnItemRemove) 
); 
+0

WinFormsアプリケーションでASP.netキャッシュを使用しないと、パフォーマンスに何らかの影響がありますか?ありがとうございます –

+0

@ハッサン・モクダード、私はあなたのシナリオもキャッシュしようとしているオブジェクトがわからない。より多くのオブジェクトをキャッシュすると、より多くのメモリが消費されます。しかし、このキャッシュはかなり最適化されているので、問題はないはずです。 –

+0

ありがとう、私はそれを試してみます –