如何转到IEnumerable中的特定项目

Sim*_*ons 44 .net c# silverlight ienumerable silverlight-3.0

我有IEnumerable,其中包含数字数据.

编辑 IEnumerable来自System.Collection.Ienumerable指令.

附上了Viual Studio的snapShot,包含数据的枚举:

alt text http://www.freeimagehosting.net/uploads/bd72c6c310.jpg

为了简要介绍上面的图像,eLevelData是IEnumerable变量,我有我的数据.

现在我想转到索引4或5的数据,但我不想使用foreach循环.请给我任何建议.

谢谢,

Subhen

Lee*_*Lee 93

var item = eLevelData.ElementAt(index);

如果您的集合被输入,IEnumerable而不是IEnumerable<T>您需要使用Cast扩展方法,然后才能调用ElementAt,例如

var item = eLevelData.Cast<RMSRequestProcessor.RMSMedia>().ElementAt(index)

  • @Subhen - 你在页面顶部有一个`using System.Linq`指令吗?它适用于Silverlight 3. (2认同)

Ant*_*lev 7

不太了解Silverlight中可用的.NET BCL/LINQ子集,但是Skip应该这样做.但一般来说它仍然在foreach内部使用:

var item = eLevelData.Skip(4 /* or 5 */).First();
Run Code Online (Sandbox Code Playgroud)