Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как обойти в цикле все содержимео IEnumerable? 
:(
    Опции темы
Stas123
Дата 5.7.2011, 17:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 180
Регистрация: 18.11.2009

Репутация: нет
Всего: нет



Мне нужно сравнить сравнить по свойству все содержимое IEnumerable.
Видимо это лучше всего делать в цикле, но как? Так не получилось.
Код

for(int i=0; i<MainWindow.Instance.Pocets.Count(); i++ )
                {
                    if(MainWindow.Instance.Pocets[i].status == 2)
                        nActivePocet++;
                }

PM MAIL   Вверх
Fitc
Дата 5.7.2011, 19:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 129
Регистрация: 30.1.2010

Репутация: нет
Всего: 4



Нифига не понятно что вы хотите... Добавьте конкретики
PM MAIL   Вверх
ДобренькийПапаша
Дата 6.7.2011, 07:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 14.1.2006
Где: г.Москва

Репутация: 3
Всего: 7



Ну, конечно, не всё совсем понятно. Но, если концептуально smile , то, вроде бы, всё у вас правильно.
Вопрос остаётся следующий: что значит, что у вас ничего не получилось? Что конкретно не получилось? Если результат не тот, который вы ожидали, то это не значит, что сам проход организован неправильно - может ваш IEnumerable чем-то не тем заполнен?
Так что займитесь отладкой/трассировкой. Поставьте breakpoint в цикле, посмотрите что у вас в коллекции, да много каких способов отладки бывает smile


--------------------
Меня зовут Себастьян Парейра, торговец чёрным деревом.
PM MAIL   Вверх
Stas123
Дата 6.7.2011, 08:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 180
Регистрация: 18.11.2009

Репутация: нет
Всего: нет



Невозможно применить индексирование через [] к выражению типа "System.Collections.Generic.IEnumerable<Pocets>" (CS0021)
вот что не получилось.
Некоторые пробелы в знании синтаксиса дают о себе знать((
Как правильно обратится к члену IEnumerable?
PM MAIL   Вверх
Экскалупатор
Дата 6.7.2011, 08:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1746
Регистрация: 1.4.2009
Где: г. Минск

Репутация: 5
Всего: 24



в таком случае было бы не плохо показать как и где объявлены эти классы: MainWindow.Instance.Pocets[i].status. надо больше данных. покажи Pocets, тогда может быть станет более понятно...

Добавлено через 31 секунду
а заодно то место где он создается, ну в общем чем больше тем лучше
PM MAIL ICQ   Вверх
WarHog
Дата 6.7.2011, 08:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 122
Регистрация: 20.10.2007
Где: Воронеж

Репутация: нет
Всего: 2



ienumerable<T> не реализует [], используй foreach:
Код

foreach (var item in MainWindow.Instance.Pocets)
{
    if (item.status == 2)
        nActivePocet++;
}

если тебе нужно посчитать nActivePocet, то используя Linq это можно сделать т.о.:
Код

nActivePocet = MainWindow.Instance.Pocets.Count(i => i.Status == 2)

--------------------
PM MAIL   Вверх
ДобренькийПапаша
Дата 6.7.2011, 09:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1278
Регистрация: 14.1.2006
Где: г.Москва

Репутация: 3
Всего: 7



Да, покажите, что у вас там такое творится - как IEnumerable имплементирован?


--------------------
Меня зовут Себастьян Парейра, торговец чёрным деревом.
PM MAIL   Вверх
Stas123
Дата 6.7.2011, 09:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 180
Регистрация: 18.11.2009

Репутация: нет
Всего: нет



WarHog, Спасибо.
Пожалуйста, пометьте тему как решенную, я не могу этого сделать.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0762 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.