Как создать файл Excel .xlsx на лету на веб-сайте ASP.NET? - PullRequest
0 голосов
/ 17 ноября 2009

Мне нужно экспортировать расписание из базы данных в файл Excel на лету на сайте ASP.NET WebForms.
Когда пользователь нажимает ссылку «Экспорт в Excel», он генерирует этот файл. Я не хочу генерировать его явно и хранить на сервере, чтобы обеспечить загрузку по требованию, потому что тогда это будут сотни файлов. У меня есть все данные, чтобы сделать это, поэтому вопрос только в том, какой подход использовать.
Один из моих коллег сделал это раньше очень уродливым способом - он создал отдельную веб-страницу, поместил все данные, необходимые для экспорта, в экземпляр StringBuilder, затем записал все его содержимое в объект Response и добавил соответствующие заголовки, чтобы он выглядел как Файл Excel. Вся эта работа 300 loc выполняется в обработчике событий Page_Load .
А на нашем сервере не установлен Excel - еще одна хитрая вещь.
Какие-либо предложения? Заранее спасибо

Ответы [ 2 ]

2 голосов
/ 17 ноября 2009

Это фактически дубликат - вам нужен ответ здесь:

Создание файлов Excel с C #

Это говорит вам, как создать файл .xslx. Сохраняете ли вы его в течение какого-то времени после его создания и загрузки, это другой вопрос.

0 голосов
/ 22 ноября 2009

SpreadsheetGear for .NET делает это простым.

Вы можете посмотреть несколько примеров в реальном времени на нашей странице примеров отчетов Excel здесь и загрузить бесплатную пробную версию здесь .

Отказ от ответственности: я владею SpreadsheetGear LLC

...