背景是我在内存中有一组昂贵的缓存值,另外还有一组相关数据,这些数据获取起来很便宜,而且不能被缓存(业务规则)。我已经让它们都正常工作了,但我想知道是否有更便宜的方法来更新这种情况...
foreach (var nonCachedItem in searchItemsNonCached)
{
foreach (var cachedItem in searchItemsCached)
{
if (cachedItem.ID == nonCachedItem.ID)
nonCachedItem.Description = cachedItem.Description;
}
}
这基本上只是将缓存信息与我刚刚获取的信息匹配。它完全有效,负载几乎可以忽略不计,但效率对我来说非常重要。
编辑:在上面的代码中,searchItemsNonCached和searchItemsCached都是SearchItem列表,其中SearchItem是一个定制对象。