1
を格納していませんが、それは常にnullだった:MemoryCacheは、私が疲れてキャッシュする人口IReadOnlyListを設定IReadOnlyList
CacheItemPolicy cip = new CacheItemPolicy(); // no expiration
IReadOnlyList<T> dataList = [populate var]
if (dataList != null)
{
MemoryCache.Default.Set(_cacheKey, dataList, cip);
}
何もキャッシュに設定されていません。しかし、私がそれを変更すると、
List<T> list = null;
CacheItemPolicy cip = new CacheItemPolicy(); // no expiration
IReadOnlyList<T> dataList = [populate var]
if (dataList != null)
{
list = dataList.ToList();
MemoryCache.Default.Set(_cacheKey, list, cip);
}
が動作します。 MemoryCacheはインターフェイスまたはIReadOnlyListオブジェクトをサポートしていませんか?
どのように 'dataList'リストにデータを設定しますか? –
実際には、関数を渡して、単純な例を維持しています。呼び出しをラップする関数を削除しました。 – Josh
関数から返されるオブジェクトのタイプは? (関数の戻り値の型ではなく、特定の場合の戻り値の実際の型)。私は可変型が問題ではないと思っていますが、オブジェクトの型が重要かもしれません。 –