我有这门课
public class Item
{
public int UniqueKey;
public int Key1;
public int Key2;
public int Key3;
public int Key4;
public string Value;
}
和收藏IEnumerable<Item>
我想通过Key1或Key2或复合项(Key1 和 Key4)为此集合的项目创建索引。收集的项目数量约为 10 000 件或更多。主要目标是性能。多个调用者可以有许多读/一写访问。返回的集合应该受到保护(防止外部修改)。有人可以解释任何解决方案、模式、我必须使用哪些集合类来实现。
由于某些原因(性能等),我拒绝了使用数据库表索引的变体。