Как получить конкретный столбец из таблицы набора данных без использования цикла.VS 2005 c # - PullRequest
0 голосов
/ 09 марта 2010

Как получить определенный столбец со значениями из таблицы набора данных с x столбцами без использования цикла? Любая помощь?

Ответы [ 4 ]

0 голосов
/ 09 марта 2010

Как насчет этого метода расширения? (но не спрашивайте меня о производительности; -))

public static DataTable GetOneColumn(this DataTable dataTable, string columnName)
{
    DataView view = new DataView(dataTable);
    return view.ToTable(false, columnName);
}
0 голосов
/ 09 марта 2010

Я собирался поместить это в качестве комментария, но в итоге получилось слишком длинным, от комментариев к ответу ZombieSheep:

@ Ди, есть ли конкретная причина, по которой вы не можете написать цикл для захвата значений?

Просто ради производительности. - Ди

Вы измерили это и подтвердили, что циклы по рядам являются для вас узким местом? Остерегайтесь преждевременных оптимизаций, которые могут в конечном итоге замедлить работу.

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

0 голосов
/ 09 марта 2010

Скорее всего, любой "волшебный" метод, который вы могли бы использовать для этого, вероятно, будет использовать закулисный цикл для выполнения работы, так что вы можете также реализовать простое решение для извлечения данных для одного столбца, используя цикл. * * 1 001

0 голосов
/ 09 марта 2010

dataset.tables[i].Columns[j] где i - индексатор таблицы, а j - индексатор столбца.

или для определенного числа и столбца dataset.tables[i].Rows[r][j], где r - индекс строки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...