IEnumerable не имеет метода Count

У меня есть следующий метод:

public bool IsValid { get { return (GetRuleViolations().Count() == 0); } } public IEnumerable GetRuleViolations(){ //code here } 

Почему, когда я делаю .Count() выше, он подчеркивается красным?

Я получил следующую ошибку:

Ошибка 1 ‘System.Collections.Generic.IEnumerable’ не содержит определения для «Count», а метод расширения «Count», принимающий первый аргумент типа «System.Collections.Generic.IEnumerable», может быть найден (вам не хватает используя директиву или ссылку на сборку?) c: \ users \ a \ documents \ visual studio 2010 \ Projects \ NerdDinner \ NerdDinner \ Models \ Dinner.cs 15 47 NerdDinner

    Вы добавляете:

     using System.Linq; 

    в верхней части вашего источника и убедитесь, что у вас есть ссылка на сборку System.Core.

    Count() – это метод расширения, предоставляемый статическим classом System.Linq.Enumerable для LINQ to Objects и System.Linq.Queryable для LINQ to SQL и других поставщиков вне процесса.

    EDIT: Фактически использование Count() здесь относительно неэффективно (по крайней мере, в LINQ to Objects). Все, что вы хотите знать, есть ли какие-то элементы или нет, не так ли? В этом случае Any() лучше подходит:

     public bool IsValid { get { return !GetRuleViolations().Any(); } } 

    IEnumeration не имеет метода под названием Count() . Это всего лишь своего рода «последовательность элементов». Используйте, например, List если вам явно нужно количество элементов. Если вы используете Linq, имейте в виду, что метод расширения Count() может фактически пересчитать количество элементов каждый раз, когда вы его вызываете.

    Any() методы Any() или Count() в Linq работают только для общих типов.

     IEnumerable 

    Если у вас простой IEnumerable без типа, попробуйте использовать

     IEnumerable 

    вместо.

    Как насчет:

     public bool IsValid { get { return (GetRuleViolations().Cast().Count() == 0); } } 
    Interesting Posts

    Оценка близости / расстояния маяка на основе RSSI – Bluetooth LE

    Как изменить конечную точку URL-адреса webservice?

    Удалите файлы, рекурсивно соответствующие имени в командной строке (OS X)

    Динамические свойства Objective-C во время выполнения?

    Как имитировать NVL в HQL

    Сильное пароли regex

    Получение android.content.res.Resources $ NotFoundException: исключение, даже если ресурс присутствует в android

    Как изменить цвет значка гамбургера в ящике для рисования материалов

    Устранение неполадок QoS в маршрутизаторе dd-wrt

    В чем разница между ServletContextHandler.setResourceBase и ResourceHandler.setResourceBase при использовании встроенного контейнера Jetty?

    OpenCV 2.4.3rc и CUDA 4.2: «Ошибка OpenCV: поддержка GPU не поддерживается»

    Новый компьютер не может запускать Linux, но без проблем запускает Windows

    Всегда запускайте данную программу в качестве администратора в Windows 8.1 без подсказки.

    Как размер файла на диске будет 0 байтов, когда в нем есть данные?

    Reflection MethodInfo.Invoke () catch исключений изнутри метода

    Давайте будем гением компьютера.