Можно ли использовать OLEDB для чтения текста из файла Excel, содержащего изображения? - PullRequest
0 голосов
/ 24 мая 2019

В настоящее время я могу читать файлы Excel, содержащие только текст, используя подход OLEDB. Однако теперь мне нужно читать файлы, содержащие изображения. Мне все еще требуются только текстовые / числовые значения из файла. Я получаю сообщение об ошибке при открытии OleDbConnection.

Итак, строка подключения, которую я использую, выглядит следующим образом:

Provider=Microsoft.ACE.OLEDB.12.0;Data Source=filename.xlsx;Extended Properties="Excel 12.0;HDR=NO;IMEX=1;TypeGuessRows=0;

System.Data.OleDb.OleDbException: 'Внешняя таблица не в ожидаемом формате.'

using (OleDbConnection conn = new OleDbConnection(connectionString))
{
    conn.Open();

    using (OleDbCommand cmd = new OleDbCommand(GetSQLCommandString(conn, sheetName), conn))
        {
            using (OleDbDataAdapter adapter = new OleDbDataAdapter(cmd))
                {
                    adapter.Fill(dt);
                }
        }
 }

 return dt.AsEnumerable()
     .Select(r => new Row(r));

Так что с этой ошибкой происходит сбой, но как только я удаляю изображения, все работает, как и ожидалось.

Стоит ли искать такие решения, как OPEN XML , или есть ли способ изменить подход OleDb к работе?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...