Как мне создать файл Excel .xlsx "на лету" на сайте ASP.NET Webforms?
-
20-09-2019 - |
Вопрос
Мне нужно экспортировать графику из базы данных в файл Excel на лету на WebForms сайт ASP.NET .
Когда пользователь нажимает на ссылку "Экспортировать в Excel", он получает сгенерированный этот файл.Я не хочу генерировать его явно и сохранять на сервере, чтобы обеспечить загрузку по требованию, потому что тогда это будут сотни файлов.У меня есть все данные для этого, так что вопрос только в том, какой подход использовать.
Один из моих коллег делал это раньше очень некрасивым способом - он создал отдельную веб-страницу, перенес все данные, необходимые для экспорта, в экземпляр StringBuilder, затем записал все ее содержимое в объект Response и добавил соответствующие заголовки, чтобы сделать его похожим на файл Excel.Вся эта работа заключается в 300 loc выполнено в обработчике события Page_Load.
И на нашем сервере не установлен Excel - еще одна сложная вещь.
Есть какие-нибудь предложения?Заранее спасибо
Нет правильного решения
Другие советы
Фактически это дубликат - вам нужен ответ здесь:
Создание файлов Excel с помощью C#
В нем рассказывается, как создать файл .xslx.Сохраняете ли вы его в течение какого-либо времени после создания и загрузки - это другой вопрос.
Устройство электронных таблиц для .NET делает это легким для выполнения.
Вы можете просмотреть несколько примеров в реальном времени на нашей странице Образцы отчетов Excel здесь и скачайте бесплатную пробную версию здесь.
Отказ от ответственности:Я владелец SpreadsheetGear LLC