【发布时间】:2011-05-19 01:48:40
【问题描述】:
我有一个项目字典,如果我选择一个项目,那么我会给出一个选项,前一个和下一个。我添加了一个代码示例,但我希望有更好/更快的方法来做到这一点,例如500个项目。
可能有 LINQ 选项之类的吗?
我检查了 Enumerator 但它只有一个moveNext 方法并且不能设置当前。
简单示例:
projects 是 Dictionary。
project 是存在于Dictionary 中的KeyValuePair。
var match = false;
var save = new KeyValuePair<ExtendedProjectLightPlan, Page>();
var before = new KeyValuePair<ExtendedProjectLightPlan, Page>();
var after = new KeyValuePair<ExtendedProjectLightPlan, Page>();
foreach (var p in projects)
{
before = save;
save = p;
if (match)
{
after = p;
break;
}
if (p.Key.Id == project.Key.Id)
{
match = true;
}
}
【问题讨论】: