Гость
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Коллекция элементов столбца Datatable / 3 сообщений из 3, страница 1 из 1
03.10.2012, 11:10
    #37981372
Шамиль Фаридович
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коллекция элементов столбца Datatable
Необходимо получить список значений столбца DataTable.
Пока делаю так:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
public List<int> getIds(DataTable table)
        {
            var ids = new List<int>();
            int id;
            foreach (DataRow row in table.Rows)
            {
                int.TryParse(row["id"].ToString(), out id);
                ids.Add(id);
            }
            return ids;
        }


Но возможно, есть более красивый способ, чем цикл по rows?
...
Рейтинг: 0 / 0
03.10.2012, 12:18
    #37981595
buser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коллекция элементов столбца Datatable
Работает и хорошо...
Код: c#
1.
2.
3.
IEnumerable<int> query =
    from row in table.AsEnumerable()
    select row.Field<int>("id");


В общем googl linq to dataset
За производительность и работоспособность не скажу... :)
...
Рейтинг: 0 / 0
03.10.2012, 12:34
    #37981637
Deza
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коллекция элементов столбца Datatable
Шамиль ФаридовичНеобходимо получить список значений столбца DataTable.
Пока делаю так:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
public List<int> getIds(DataTable table)
        {
            var ids = new List<int>();
            int id;
            foreach (DataRow row in table.Rows)
            {
                int.TryParse(row["id"].ToString(), out id);
                ids.Add(id);
            }
            return ids;
        }


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

Код: c#
1.
2.
var data = new DataTable();
var List = data.AsEnumerable().Select(p=>p.Field<int>("id"));



да Имхо разумнее возвращать IEnumerable<int> а не List<int>
...
Рейтинг: 0 / 0
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Коллекция элементов столбца Datatable / 3 сообщений из 3, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]