【发布时间】:2015-02-10 05:38:08
【问题描述】:
我的程序中有一个循环,它遍历数千个对象以找到具有特定 ID 的正确对象。 还有比这个更好更快的方法吗
int id;
SPList list = SPContext.Current.Web.Lists.TryGetList("DataLibrary");
IEnumerable<SPListItem> _dataitems = list.Items.OfType<SPListItem>();
foreach (SPListItem item in _dataextantitems)
{
if (item.ID == id)
{
title= item.Title;
}
}
【问题讨论】:
-
我认为你遗漏了一些代码。
-
我只展示了循环的部分代码。我猜循环内部发生的事情并不重要。
-
也许您正在寻找从您的收藏中找到一件单品,请使用
var item = _dataitems.FirstOrDefault(r=> r.ID == id);。见:stackoverflow.com/questions/12477422/… -
@DimitarDimitrov 局部变量在分配之前不能使用;除非他为其分配值,否则代码不会编译。大概生成 ID 的代码与我们无关。
-
@Servy :P 是的,你当然是对的 :) 我的错。
标签: c# linq sharepoint foreach sharepoint-2010