Доступ к библиотеке Interop.office.excel из веб-приложения asp.net - PullRequest
0 голосов
/ 14 марта 2012

У меня есть веб-приложение asp.net и развернуто на веб-сервере. в сценарии у меня есть лист Excel с фиксированным форматом, который находится на сервере в веб-папке. во время выполнения я пишу в ячейку с помощью библиотеки interop.office.excel. изначально на сервере не было установлено ни одного Excel, затем мы установили Excel и получили полные права на COM-компонент от сервисов компонента. но теперь мы получаем ошибку ниже. Как это решить?

Обнаружение продукта '{90110409-6000-11D3-8CFE-0150048383C9}', функция 'OfficeUserData', компонент '{4A31E933-6F67-11D2-AAA2-00A0C90F57B0}' не удалось. Ресурс 'HKEY_CURRENT_USER \ Software \ ODBC \ ODBC.INI \ MS База данных Access \ 'не существует.

Обнаружение продукта '{90110409-6000-11D3-8CFE-0150048383C9}', функция 'ExcelUserData', компонент '{8ADD2C96-C8B7-11D1-9C67-0000F81F1B38}' не удалось. Ресурс 'HKEY_CURRENT_USER \ Software \ Microsoft \ Office \ 11.0 \ Excel \ UserData' делает не существует.

1 Ответ

4 голосов
/ 14 марта 2012

Взаимодействие не поддерживается в нескольких сценариях (например, ASP.NET) MS .

Существует множество опций для чтения / редактирования / создания файлов Excel без Interop:

MS предоставляет бесплатный OpenXML SDK V 2.0 - см. http://msdn.microsoft.com/en-us/library/bb448854%28office.14%29.aspx (только XLSX)

Может читать и записывать файлы MS Office (включая Excel).

Другой бесплатный вариант см. http://www.codeproject.com/KB/office/OpenXML.aspx (только XLSX)

Если вам нужно больше работать с более старыми версиями Excel (такими как XLS, не только XLSX), рендерингом, создавать PDF-файлы, формулы и т. Д., То существуют различные бесплатные и коммерческие библиотеки, такие как ClosedXML (бесплатно, только XLSX). ), EPPlus (бесплатно, только XLSX), Aspose.Cells , SpreadsheetGear , LibXL и Flexcel и т. Д. .

...