WCFとASP.NETアプリの両方から機能するキャッシュ機能が必要です。私は見た:
System.Web.Caching.Cache
これはWCFからは使用できません(サービスがIISでホストされている場合にのみ使用できると理解していますが、常にそうであるとは限りません)System.Runtime.Caching
これは両方から使用できますが、.NET 4からのみ使用できますが、.NETバージョンは3.5です。
助言がありますか?
System.Web.Caching.Cache
IISの外部で絶対に使用できます。参照を追加するだけSystem.Web
で、IISの機能ではありません。
.NET 1.0および1.1には問題がありましたが、2.0以降には問題がなかったようです。このナレッジベースの記事を参照してください。
ただし、Davide Pirasと同様に、AppFabricを使用して2つのアプリケーション間でキャッシュを共有することを検討することをお勧めします。「私の要件ではAppFabricのようなものを買う余裕がない」とはどういう意味かわかりません。「余裕がある」とは、パフォーマンスやメモリなどについて話しているのですか。AppFabricはキャッシュサーバーで使用するように設計されていますが、専用のハードウェアは必要ありませんが、必要に応じて、アプリケーションと同じボックスでサービスを実行できます。
新しいソリューションは、WindowsServerAppFabricキャッシングを使用します
https://github.com/geersch/AppFabric
http://dotnet.dzone.com/articles/caching-wcf-services-part-2
http://channel9.msdn.com/Events/TechEd/NorthAmerica/2012/AAP314
*** 2.in.NET1.0および1.1http ://support.microsoft.com/kb/917411