0

私は、他の開発者がアプリケーションで使用して使用する、いくつかの高レベルのユーティリティクラスを含むdllを作成しています。

現在、私はクラスの実装に取り​​組んでいます。これは、大きな文字列のローカルキャッシュを利用する必要があります。そうしないと、非常に遅くなります。

(dllに入るコードから)ファイルを配置できる統合キャッシュストレージの場所はありsuperclass.cacheますか?それは任意の.netアプリ(asp.netも)で機能しますか?

たとえば、ASP.Netのライブラリを作成する人はAppData、この目的でフォルダを使用するだけです。ただし、ライブラリがWPFアプリケーションで参照されている場合、AppDataフォルダーはありません。さらに悪いことに、コードからディスクへの書き込みが許可されていない環境で実行される可能性があります。

これにより、キャッシュを有効にするようにユーザーに求めるという質問が発生します。有効になっている場合は、唯一の(最良の)オプションはどこにありますか?

更新:Windows Phoneが分離されたストレージで導入されていることを考えると、ICacherインターフェイスを提供し、人々がそれをユニバーサルに実装できるようにするほうがよいと思います。

4

1 に答える 1

1

これが.Net4.0であると仮定すると、System.Runtime.Caching名前空間が使用可能です。これにはMemoryCacheクラス(MSDN)があります。これはASP.NETキャッシュに似たキャッシュクラスですが、System.Webアセンブリに依存しません。System.Runtimeの一部として、これはすべてのタイプのアプリケーションで使用できる必要があります。

于 2012-03-18T21:31:57.227 に答える