170 похожих чатов

Кто то может мне обяснить что такое possible multiple Enumeration.

Погуглил но че то не понимаю. Это ложное предупреждение или нет ?

17 ответов

48 просмотров

ienumerable вообще не комильфо проматывать несколько раз, это интерфейс предназначенный для однократной промотки. Некоторые реализации контейнеров могут позволить промотать несколько раз, но другие позволят лишь раз, а на второй промотке не вернут ничего. Поэтому это предупреждение стоит принять во внимание и, если тебе прямо нужно пробегать несколько раз, переведи ienumerable в тот же list

enumerable может подтягиваться из сети например, и если ты два раза по нему пройдешься, то ты два раза вытянешь данные из сети

Dmitry B.
ienumerable вообще не комильфо проматывать несколь...

ну вообще нет) метод Reset не просто так придумали и невозможность повторной энумерации скорее исключение

Hesu- Автор вопроса
Dmitry B.
ienumerable вообще не комильфо проматывать несколь...

Если моя коллекция будет всегда локальной и мне все ровно надо будет 2 раза перечислять их методами например Any и Count то выходит что предупреждение ложное ?

Hesu
Если моя коллекция будет всегда локальной и мне вс...

Лучше заменить IEnumerable на более подходящий тип

Hesu
Если моя коллекция будет всегда локальной и мне вс...

сейчас у тебя будет работать, но в будущем в ходе развития кода реализация коллекции может запросто измениться, что приведёт к баге. Это плохая практика - полагаться на конкретную реализацию, лучше сразу обезопаситься переводом в список/массив/IReadonlyCollection

Hesu- Автор вопроса
Dmitry B.
сейчас у тебя будет работать, но в будущем в ходе ...

Понимаю но меня беспокоит именно тот вопрос. Что если к локальной колекции будет выполнятся запрос например Last() или .Where() Все ровно оно будет перечислятся вверно ? Тогда выходит что предупреждение ложное ?

Hesu- Автор вопроса
Hesu
Понимаю но меня беспокоит именно тот вопрос. Что е...

Предупреждение не ложное, он ж корректно тебя предупреждает что сюда может прийти одноразовый ienumerable и все сломается. Если ты не будешь вызывать функцию с таким аргументом, то все норм, го предупреждение все равно остаётся корректным

Hesu- Автор вопроса
Hesu
что значит одноразовый IEnumerable ?

Который можно проитерировать только один раз

Hesu- Автор вопроса
Hesu
пример можно ?

Такой пример сложно придумать Но можно придумать пример, который будет очень долго итерироваться: IEnumerable<int> GetFriendsIdsFromVk(){ return vkClient.GetFriends().Select(f => f.Id); }

Сергей
ну вообще нет) метод Reset не просто так придумали...

Да нет, вообще-то именно просто так придумали. Вот что говорит документация: > The Reset method is provided for COM interoperability. It does not necessarily need to be implemented Я не знаю нормальных сценариев, в которых этот метод используется.

Hesu
Если моя коллекция будет всегда локальной и мне вс...

Тогда лучше напиши нормальный код поверх своей коллекции, не пользуясь LINQ. Быстрее будет работать.

Похожие вопросы

Обсуждают сегодня

Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
75
А как лучше конвертировать физический адрес в виртуальный при маппинге? В случае ядра у меня, например, direct mapping, первые 768МБ я как есть мапплю в higher half, а остальн...
Evg Resh
26
Всем привет, подскажите/посоветуйте пожалуйста. Фаердак компоненты, имею одно место где бизнес хочет видеть при открытии формы список всех клиентов, это порядка 30к. Мои дово...
Sasha Sch
14
Ребят, если кто в курсе - скажите, а в загранке такое же засилье маркетплейсов? или там простые сермяжные интернет-магазины живут попроще?
Андрей [aharito] Харитонов
14
Коллеги, доброе утро. Запустил на удаленном хосте приложение (ручками зашел туда по ssh и запустил, не командой удаленно). Создал потом ssh-туннель, и с моей машины приложение...
Δημήτηρ
9
Господа всем привет. Для того чтобы страница индексировалась с запросом под каждый город. Это нужно делать отдельные страницы для каждого города, или есть варианты по лучше?
Владимир
8
Хотел бы спросить у знающих, правильную ли я выбрал книгу для начала изучения ассемблера Юрова В.И ? Или есть более лучшие книги для начала обучения?
Botsman
31
а я честно сказать не понимаю - нахуя идти учиться на вышку или еще куда-либо и при этом нихуя не делать, типа зачем ? просто корку получить, а нахуй она нужна тогда ?
Eugene Неелов
7
$params = [ 'formid' => 'feedbackForm', 'formTpl' => '@CODE: <form class="form-validate" data-id="ajax_form"> <fieldset class="margin-bottom-md"> ...
Pathologic
1
Здравствуйте. Задача состоит в том, чтобы сделать real-time чат в мобильном приложении. После передачи сообщения пользователем через веб-сокеты, для основного и долговременног...
🐾
5
Карта сайта