Исключение несоответствия типа данных при попытке сравнить строки Excel общего или типа со строкой с помощью OleDbCommand

#asp.net #c #excel #datatable #oledb

#asp.net #c #excel #datatable #oledb

Вопрос:

Чтобы ускорить работу моего приложения, я пытаюсь получить строку, в которой столбец ‘Vertical_num’ соответствует заданной строке.Приведенный ниже код

  using (OleDbConnection connection = new OleDbConnection(con))
            {
                connection.Open();
                OleDbCommand command = new OleDbCommand("Select * from [All Verticals$] where Vertical_num ='" t "'", connection);

                OleDbDataAdapter da = new OleDbDataAdapter(command);
                DataSet ds = new DataSet();
                System.Data.DataTable dt1 = new System.Data.DataTable();
                da.Fill(dt1);
                for (int i=0;i<dt1.Rows.Count;i  )
                {
                    Console.Out.WriteLine(dt1.Rows[i].ItemArray[2].ToString());
                }
                connection.Close();
            }
  

Он выводит требуемое значение, когда значение в столбце моего файла Excel равно 1000_1, но когда значение в столбце равно 10001, возвращается «Исключение несоответствия типа данных»
Как я могу изменить свой запрос, чтобы он соответствовал всем типам значений ячеек?
Тип моего столбца Excel — общий, я изменил его на текст, но была возвращена та же ошибка.