DataRow[] + расширение LINQ

374
05 января 2017, 04:37

Есть массив строк DataRow[] datarows. Одна из колонок имеет имя Sum. Как получить максимальное значение по данной колонке при помощи расширения LINQ? Спасибо.

Answer 1

Если оставить в стороне то, что вы работаете с массивом DataRow, а ответить на конкретно поставленный вопрос, то поиск максимального элемента не будет сильно отличатся от поиска элемента в массиве содержащим в себе объекты определенного класса.

Вы можете получить доступ к столбцам DataRow используя индексаторы (по названию столбца или индексу (отсчет от 0)), которые вернут объект типа object.

Также можно добавить ссылку на System.Data.DataSetExtensions.dll и воспользоваться методами расширения Field, которые предоставляют строго типизированный доступ к вашим столбцам.

Таким образом ваш код будет примерно следующим:

        var max =
            datarows
            .Select(x => x.Field<int>("Sum"))
            .Max();
READ ALSO
Авторизация по токену в ASP.NET WEB API

Авторизация по токену в ASP.NET WEB API

Всем привет! Занимаюсь написанием API для курсовой работыВыбор пал на Azure и ASP

431
Не могу обратиться к классу в c#

Не могу обратиться к классу в c#

Написал программу каталогизатор, прописывал все прямо в теле обработчиков событийНо препод наругал, сказал, что все должно быть красиво,...

326
Вывод тегов bass.net в Label.Content

Вывод тегов bass.net в Label.Content

Во время проигрывания потока в момент смены трека на радио, происходит захват новых meta данных (Исполнитель и Название трека), как их вывести...

344
Как лучше объединить две ветки?

Как лучше объединить две ветки?

Одна ветка соединяется с другой (node и node_ser)Внутри них множество вложенных узлов

263