Для пояснения я пытаюсь перенести каждую целую строку Excel в список.В случае упрощенного примера я пытаюсь перевести первую строку в массив строк.
Я проработал несколько сообщений на тему преобразования каждой строки таблицы Excel и переноса каждой строки вСписок, включая этот пост
Несмотря на то, что я играю с примерами, я все равно получаю ошибку конвертации.Я сузил свою программу до простого примера, просто разгрузив первую строку, которая содержит заголовки столбцов, в строковый массив, и я получаю сообщение об ошибке, в котором говорится, что не удается преобразовать общий список в строку [].
Я могу напечатать первую строку, используя Console.Write(String.Format(dataRange.Value2.ToString() + " ")
, но не могу сохранить первую строку.
Вот упрощенная программа, которая выдает ошибку:
static void Main(string[] args)
{
string [] m_column_headings;
Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel.Workbook wbv = excel.Workbooks.Open("H:\\my_documents\\testFile.xlsx");
Microsoft.Office.Interop.Excel.Worksheet wx = excel.ActiveSheet as Microsoft.Office.Interop.Excel.Worksheet;
Range dataRange = (Range)wx.Cells[1, 1];
m_column_headings = dataRange.Cast<object>().Select(o => o.ToString()).ToList(); <--- This line gets the error.
На основев ответ я внес следующие изменения, чтобы сохранить правильность типов, но не могу увидеть, что я назначил.
dataRange = (Range)wx.Cells[1, 1];
m_column_headings =
dataRange.Cast<object>().Select(o => o.ToString()).ToArray();