作成した一般的なビジネス オブジェクトを使用する ASP.net アプリケーションがあります。これらのビジネス オブジェクトは、他のいくつかの Windows サービスまたはコンソール アプリケーションでも使用されます。
私が直面している問題は、クラス「foo」とクラス「bar」があり、それぞれに関数 loadClient() がある場合、foo.loadClient() と bar.loadClient() を呼び出すと、各リクエストがヒットすることです。データベース。ある種のキャッシュを実装すると、DB への不要なラウンドトリップが減ると思います。
これがキャッチです。ASP.net アプリで受信する各 HTTP 要求に固有のキャッシュが必要です。つまり、新しいリクエストはまったく新しいキャッシュを取得します。それらの 90% はユーティリティであるため、キャッシュは他のコンソール アプリケーションの存続期間にわたって存在できます。
System.Web.Cache を使用できることはわかっていますが、ミドルウェアを System.Web ライブラリに結び付けたくありません。
それがそれを説明することを願っています。誰かが私を正しい方向に向けることができますか? ありがとう!