Как вы получаете определенное значение из объекта System.Data.DataTable?

StackOverflow https://stackoverflow.com/questions/1094307

Вопрос

Я программист на низкоуровневых алгоритмах, и базы данных на самом деле не мое дело - так что это будет вопрос n00b, если он когда-либо был.

Я запускаю простой запрос SELECT через DAO нашей команды разработчиков.DAO возвращает объект System.Data.DataTable, содержащий результаты запроса.Пока что все работает нормально.

Проблема, с которой я столкнулся сейчас:
Мне нужно извлечь значение из одного из полей первой строки результирующей таблицы данных - и я понятия не имею, с чего вообще начать.Microsoft так сбивает с толку по этому поводу!Арррг!

Буду признателен за любой совет.Я не привожу никаких примеров кода, потому что считаю, что контекст здесь не нужен.Я предполагаю, что все объекты DataTable работают одинаково, независимо от того, как вы выполняете свои запросы, и поэтому любая дополнительная информация просто сделает это еще более запутанным для всех.

Это было полезно?

Решение

Только самое необходимое....

yourDataTable.Rows[ndx][column]

где ndx - номер строки (начинающийся с 0) где column может быть объектом DataColumn, индексом (столбец n) или именем столбца (строка)

yourDataTable.Rows[0][0]
yourDataTable.Rows[0][ColumObject]
yourDataTable.Rows[0]["ColumnName"]

чтобы проверить наличие null, сравните с DBNull.Значение;

Другие советы

Ты имеешь в виду типа table.Rows[0]["MyColumnName"]?

Если вы не хотите извлекать строку с ее идентификатором = 5 (т. е. первичный ключ) и получать ее значение для столбца под названием «Описание».

DataRow dr = myDataTable.Rows.Find(5);
String s = dr["Description"].ToString();
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top