Как перейти к определенному элементу в IEnumerable
У меня есть IEnumerable, который содержит число данных внутри него.
Edit
IEnumerable из директивы System.Collection.Ienumerable.
Прикреплено snapShot Viual Studio, Enum, которое содержит данные:
alt text http://www.freeimagehosting.net/uploads/bd72c6c310.jpg
Чтобы кратко рассказать об этом изображении, eLevelData - это переменная IEnumerable
, в которой у меня есть мои данные.
Теперь я хочу перейти к данным с индексом 4 или 5, но я не хочу использовать цикл foreach. Любые предложения, пожалуйста.
Спасибо,
Subhen
Ответы
Ответ 1
var item = eLevelData.ElementAt(index);
Если ваша коллекция напечатана как IEnumerable
вместо IEnumerable<T>
, вам нужно использовать метод расширения Cast
, прежде чем вы сможете вызвать ElementAt, например.
var item = eLevelData.Cast<RMSRequestProcessor.RMSMedia>().ElementAt(index)
Ответ 2
Не знаю, что такое подмножество .NET BCL/LINQ доступно в Silverlight, но Skip
должно сделать трюк. Но, вообще говоря, он по-прежнему использует foreach
внутренне:
var item = eLevelData.Skip(4 /* or 5 */).First();