2016-10-24 5 views
-4

Простите, что это вопрос о нобе. Я новичок в C# и смущен использованием IEnumerables. Я пытаюсь выполнить итерацию по списку объектов, но обычный метод foreach, к которому я привык, не работает по вполне понятным причинам. Может ли кто-нибудь дать мне пример реализации кода, который выполняет итерацию через список объектов с использованием IEnumerable?Как использовать IEnumerable в скриптах C#

EDIT

class MyObjects : IEnumerable<LIST> 
    { 
     List<LIST> myTeam = new List<GroupMember>(); 

     public LIST this[int index] 
     { 
      get { return myTeam[index]; } 
     } 

     public IEnumerator<LIST> GetEnumerator() 
     { 
      return myTeam.GetEnumerator(); 
     } 

     IEnumerator IEnumerable.GetEnumerator() 
     { 
      throw new NotImplementedException(); 
     } 

     IEnumerator<GroupMember> IEnumerable<GroupMember>.GetEnumerator() 
     { 
      throw new NotImplementedException(); 
     } 
    } 

Приведенный выше код является то, что я реализовал до сих пор. Я попробовал повторить через возвращенный список, используя foreach, но это не сработало, и дальнейшие исследования показали, что я должен явно определять список как перечислимый и т. Д. Я просто потерял информацию о том, как это достигается. И да, ничто не очевидно, когда вы не знаете, что делаете.

Итак, чтобы подвести итог, я могу вызвать функцию, которая возвращает список объектов. Я хочу, чтобы иметь возможность перебирать этот список объектов, чтобы я мог получить доступ к значениям внутри него.

+3

Покажите свой код, это не распространяется работа, как вы ожидаете. – HimBromBeere

+2

https://www.dotnetperls.com/ienumerable – chris579

+0

Поскольку IEnumerable содержится в System.Collection, просто добавьте директиву использования – Radinator

ответ

-3

Итерация диапазона чисел от 1 до 10 ...

foreach (var i in Enumerable.Range(1, 10)) 
    { 
     //Do something with i 
    } 
+3

'.ToList' здесь полностью избыточен. – spender

+0

Да. foreach просто не работает. Я боюсь. –

+2

@Payne нет ничего подобного "foreach не работает" ... – chris579