多くのことにHttpRuntime.Cacheを使用する既存のasp.net4.0Webサイトがあります。作業を開始する前はこのように作成されていましたが、キャッシュがクリアされ、ウェブサイトがフォールバックするという問題が発生しています。これは、常にキャッシュが存在することを期待しているためです(私は知っています...彼らはキャッシュが何であると考えていましたか? !?)。
したがって、必要なのは永続的な置換キャッシュであり、Webサイトに影響を与えることなくHttpRuntime.Cacheと交換できます。シリアル化について見てきましたが、すべてのオブジェクトがシリアル化できるわけではなく、すべてをシリアル化できるようにするオプションはありません(オブジェクトの数が多すぎて散在しています)。
メモリオブジェクト/変数/その他のものをディスクに保存し、シリアル化せずに後で読み取る方法はありますか?
アップデート:
これまでのコメントと回答に感謝します。あなたのアイデアから始めて、私はもう少しグーグルをして、.Net 4.0であなた自身のカスタムキャッシングプロバイダーを使用する方法を(ダウンロードできるサンプルソリューションで)示すこの記事に出くわしました。私はそれを私たちのWebアプリケーションに統合して適切なテストを行うことができませんでしたが(願わくば今日の後半にできるようになるでしょう)、ここに置いて、何か考えがあるかどうかを確認したいと思いました。 ..それで、あなたはどう思いますか、私が知っておくべき警告はありますか?それとも、これは実行可能な(そして非常に一時的な)解決策ですか?
Webおよび非Webアプリ用のファイルベースのキャッシュとExtendASP.NET4.0 OutputCacheProvider