powered by simpleCommunicator - 2.0.18     © 2024 Programmizd 02
Map
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Чтение данных из Excel c помощью OleDbConnection и ExecuteReader
3 сообщений из 3, страница 1 из 1
Чтение данных из Excel c помощью OleDbConnection и ExecuteReader
    #40024516
Vlad__i__mir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!

Есть задача, вывести из 1-го файла Excel заданный диапазон в 1-ый DataGridView, а потом из этого же файла вывести все значения 1-ой строки (заголовок таблицы) в столбец 2-го DataGridView.

Вывод диапазона сделал, а вот с выводом всех значения 1-ой строки (заголовок таблицы) в столбец 2-го DataGridView проблема - не читает 1-ую строку, начинает считывать и выводить со 2-ой:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
using (OleDbConnection connection = new OleDbConnection(csbuilder.ConnectionString))
            {
                connection.Open();

                //Вывод заданного диапазон в 1-ый DataGridView

                //Получаем конкретный диапазон
                string selectSql =String.Format(@"SELECT * FROM [{0}{1}0:{2}{3}]", nameList,startColumn,finishColumn, countRows);

                OleDbCommand excelDbCommand = new OleDbCommand(selectSql, connection);


                using (OleDbDataAdapter adapter = new OleDbDataAdapter(excelDbCommand))
                {
                    adapter.Fill(dataTable);
                    dataGridViewExcel.DataSource = dataTable;
                }

                //Вывод всех значений 1-ой строки (заголовок таблицы) в столбец 2-го DataGridView

                OleDbDataReader reader = excelDbCommand.ExecuteReader();
                reader.Read();
                List<string> nameColumns = new List<string>();

                for (int i = 0; i < reader.FieldCount; i++)
                {
                    nameColumns.Add(reader[i].ToString());
                }

                createColumnsDataGridView();

                foreach (string x in nameColumns)
                {
                    DataGridViewCell newCell = new DataGridViewTextBoxCell();//Create New Cell
                    DataGridViewCell newCell2 = new DataGridViewCheckBoxCell();//Create New Cell
                    DataGridViewRow newRow = new DataGridViewRow();//Create New Row
                    newRow.Cells.Add(newCell);//Add Cell to Row
                    newRow.Cells.Add(newCell2);//Add Cell to Row
                    newRow.Cells[0].Value = x;
                    newRow.Cells[1].Value =true;
                    dataGridView_NameColumn.Rows.Add(newRow);//Add Row To Datagrid

                }
                reader.Close();
                connection.Close();
            }



В чем может быть, почему не берется 1-ая строка с листа файла в ExecuteReader()?
...
Рейтинг: 0 / 0
Чтение данных из Excel c помощью OleDbConnection и ExecuteReader
    #40024522
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Надо в строку подключения добавить HDR=No (ЕМНИП)
...
Рейтинг: 0 / 0
Чтение данных из Excel c помощью OleDbConnection и ExecuteReader
    #40024525
Vlad__i__mir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro
Надо в строку подключения добавить HDR=No (ЕМНИП)

Это сработало! Спасибо большое за помощь!
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Чтение данных из Excel c помощью OleDbConnection и ExecuteReader
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали тему (1): Анонимы (1)
Читали форум (1): Анонимы (1)
Пользователи онлайн (9): Анонимы (6), Yandex Bot, Bing Bot 1 мин., Google Bot 3 мин.
x
x
Закрыть


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