私はこのようなものをキャッシュするためのシンプルなインターフェースを持っています
public interface ICacheService
{
T Get<T>(string cacheId, Func<T> getItemCallback) where T : class;
}
これは単純なコールバック関数で機能しますが、私の場合はもう少し複雑なものを追加する必要があります。匿名タイプだと思います...
コントローラーで、クエリを実行するサービスを注入しています。これは次のようになります。
this.queryContainer.Get<ObjectQuery>().Execute(new ObjectParameters(id));
しかしもちろん、これはタイプFuncではないので、キャッシュサービスを使おうとすると、コンパイラは文句を言います。
キャッシュを機能させるには、どのような種類のインターフェイスが必要ですか?理想的にはこれを実行したい:
this.cachingService.Get<ObjectResult>(id, this.queryContainer.Get<ObjectQuery>().Execute(new ObjectParameters(id)));
それも可能ですか?
どんな助けでも大歓迎です!
どうもありがとう