OleDbСоединение с таблицей стилей Excel: что за компонент скрыт за сценой? - PullRequest
0 голосов
/ 23 июня 2011

В моем исходном коде мне нужно прочитать содержимое таблицы стилей Excel 2007. Итак, я сначала настроил OleDbConnection к нему:

OleDbConnection conn = new OleDbConnection(String.Format(@"Provider = Microsoft.ACE.OLEDB.12.0;Data Source = {0};Extended Properties =""Excel 12.0 Xml;HDR=YES;IMEX=1"";", xlsFilePath));

Это прекрасно работает на моем компьютере, но не на сервере после развертывания: Microsoft.ACE.OLEDB.12.0 там не доступен. Это, вероятно, потому что у меня Office 2007 на моем компьютере. К сожалению, я не могу установить его на сервер.

Тем не менее, я мог бы, вероятно, установить на сервере только dll, содержащую провайдера, и это было бы нормально ... если бы я мог знать, что это за проклятая dll!

Вот где я рву волосы: я не могу найти свой путь в дереве членов окна отладки, чтобы найти фактический компонент, который динамически загружается для обработки соединения Excel 12.0 : какой класс ? Какая сборка? Понятия не имею, я потерялся.

Ваша помощь будет принята с благодарностью! : -)

1 Ответ

0 голосов
/ 29 июня 2011

Я в конечном итоге исправил свою проблему, установив драйверы для Office 2007 на сервер (драйверы Office 2007 не связаны с теми же проблемами, что и приложения Office 2007 с точки зрения лицензий).

Вот ссылка: http://www.microsoft.com/download/en/confirmation.aspx?id=23734

Затем я изменил строку подключения на

@"Provider = Microsoft.ACE.OLEDB.12.0;Data Source = {0};Extended Properties =""Excel 12.0 Xml;HDR=YES;IMEX=1"";"

Надеюсь, это поможет кому-то, кто сталкивается с такими же вопросами. : -)

...