我有一個對象列表(字符串文件名,BitmapImage圖像)用作圖像緩存。Linq查找動態列表
private static readonly List<ImageData> imageCache = new List<ImageData>();
我在每次需要時創建了一個Lookup來檢查這個緩存中的圖像。如果圖像不在列表中,則將其添加到列表中。
的看着被靜態創建
private static Lookup<string, ImageData> FileNameLookup = (Lookup<string, ImageData>)
imageCache.ToLookup(data => data.ImageFileName, data => data);
但是,除非我重新每次FileNameLookup我的元素添加到列表中查找不會返回那些具有相同的文件名的對象。
public static void Reinit()
{
FileNameLookup = (Lookup<string, ImageData>) imageCache.ToLookup(data =>
data.ImageFileName, data => data);
}
只有當列表的內容是靜態的時才應該使用查找嗎?我可以輕鬆使用字典,但想嘗試查找。
乾杯,
詹姆斯