【发布时间】:2013-05-03 16:52:43
【问题描述】:
我有一组具有以下界面的对象:
public IEntity
{
public string Key1 { get; set; }
public string Key2 { get; set; }
... some other properties
}
并且正在寻找通过 linq 查询这些对象的内存集合的最佳策略。大多数查询(但不是全部)可能会寻找 Key1 或 Key2 来访问实体,所以我不确定查询它们的最高效方式是什么。我的想法是:
IList
只需将它们放在一个列表中,然后使用 linq 过滤它们
IDictionary
使用 key1 和 key2 创建一个多键字典,但如果我只知道一个部分,我不确定如何访问 IEntity?
别的东西
还有其他更好的方法来实现这一点吗?
【问题讨论】:
-
这全部取决于您要执行的搜索类型。
-
实现什么?键是复合的还是独立唯一的?
标签: c# performance linq collections