VSTO работает на Windows Azure?

У меня есть веб-приложение, которое будет развернуто на Windows Azure, и я ищу альтернативы для генерации электронных таблиц Excel.

Я могу использовать VSTO, чтобы программно генерировать электронную таблицу Excel в веб-Роли, работающей на Windows Azure?... Если да, как я должен развернуть приложение на Windows Azure? Какие блоки я должен включать?

6
задан Alexis Pigeon 24 July 2013 в 17:22
поделиться

3 ответа

Я проверил это и, очевидно, это не будет работать, VSTO требует, чтобы Office был установлен.

2
ответ дан 16 December 2019 в 21:34
поделиться

Джони и Джо правы. VSTO не будет работать на Azure.

Полагаю, вы ищете Open XML SDK. Он позволяет создавать Excel или другие файлы Office из .NET без использования автоматизации Office.

Edit: Вот один вариант, который я рассматривал для тех случаев, когда Open XML SDK просто не обладает функциональностью, которую я могу получить от прямого доступа к объектной модели приложения Office. Создайте машину вне Azure, которая будет работать так же, как рабочая роль Azure, обрабатывая сообщения из очереди Azure Queue. Поскольку приложение на этой машине может быть настроено на последовательное выполнение задач, вы сможете делать то, что было бы нежелательно, если бы вы пытались выполнить приложение Office из веб-роли. Эта машина может находиться в вашем центре обработки данных, или вы можете использовать виртуальную машину Azure VM, чтобы установить Office. Если эта ВМ создавала и/или читала документы Excel, то просто используйте Azure Blob storage для хранения документов.

Если машина, на которой установлен Office, находится за пределами Azure, вы понесете дополнительные расходы на пропускную способность для всех данных, поступающих в Azure и выходящих из него.

4
ответ дан 16 December 2019 в 21:34
поделиться

Мне удалось успешно сгенерировать электронные таблицы Excel в Azure с помощью проекта EPPlus с открытым исходным кодом. Он основан на OpenXML SDK, но гораздо проще в использовании.

Я развертывал код на Worker Role вместо Web Role (согласно архитектуре Lokad.CQRS for Azure) для предварительной генерации отчетов, чтобы приложение было более масштабируемым. И единственной необходимой сборкой была Epplus.dll.

2
ответ дан 16 December 2019 в 21:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: