Помощь с foreach, получение «возможного многократного перечисления IEnumerable» - PullRequest
4 голосов
/ 12 сентября 2011

Попытка сделать foreach:

foreach(User in userList)
{

}

Где userList является IEnumerable<User> userList

Я пытался сделать: userList.ToList (), но я получаю то же сообщение.

Ответы [ 4 ]

9 голосов
/ 12 сентября 2011

В вашем операторе foreach вы не указали идентификатор для текущего экземпляра User.Попробуйте добавить идентификатор (например, currUser или просто user) после типа User, например:

foreach(User user in userList)
{

}
5 голосов
/ 12 сентября 2011

другие ответы показали вашу проблему с синтаксисом, но какой-то инструмент (я думаю, resharper) предупредит вас, что вы можете перечислить последовательность более одного раза (возможно, даже VS - не знаю, потому что я использую их вместе).Если это проблема, напишите что-то вроде

var userArray = userList.ToArray();

и используйте userArray вместо userList

4 голосов
/ 12 сентября 2011

Должно быть:

foreach(User user in userList)
{

}
3 голосов
/ 12 сентября 2011

Цикл foreach требует, чтобы вы определили переменную для размещения каждой итерации. Вы только определили класс и пропустили переменную.

foreach(User _user in userList)
{

}
...