Как я могу экспортировать данные в свой webapp на лист Excel из ASP.NET (VB.NET, SQL 2005)?Как я могу экспортировать мою страницу ASP.NET в Excel?
ответ
Изменение ТипСодержимого вашей страницы ASP.Net
Response.ContentType = "application/ms-excel"
службы отчетов SQL Server будет лучшим способом для экспорта данных из приложения в Excel.
Если у вас нет доступа к/dont wan't для использования служб отчетов в зависимости от данных, которые вы хотите извлечь/форматировать, возможно, используя структуру CSV вместо Excel, может быть проще всего.
Используйте DLLs Microsoft.Office.Interop.Excel для создания файлов Excel с данными, а затем предоставить ссылки для загрузки файлов с помощью метода загрузки Hunter Дэйли ...
Как общее решение, вы можете рассмотрите обработчик (ashx) для экспорта - и передайте либо параметры запроса, чтобы воссоздать запрос, чтобы сгенерировать данные или идентификатор, чтобы получить данные из кеша (если они кэшированы). В зависимости от того, достаточно ли CSV для экспорта Excel, вы можете просто форматировать данные и отправить их обратно, установив ContentType, поскольку @Hunter предлагает или использует первичные сборки interop (для чего потребуется Excel на сервере) для создания реальной электронной таблицы Excel и сериализуйте его в поток ответов.
Я предпочитаю использовать строку подключения OLEDB.
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Excel.xls;Extended Properties="Excel 8.0;HDR=Yes;IMEX=1";
Не уверен, что экспорт страницы, но если вы просто хотите экспортировать набор данных или DataTable
HttpContext.Current.Response.Clear()
HttpContext.Current.Response.AddHeader("content-disposition", String.Format("attachment; filename={0}", fileName))
HttpContext.Current.Response.ContentType = "application/ms-excel"
Dim sw As StringWriter = New StringWriter
Dim htw As HtmlTextWriter = New HtmlTextWriter(sw)
Dim table As Table = New Table
table.RenderControl(htw)
' render the htmlwriter into the response
HttpContext.Current.Response.Write(sw.ToString)
HttpContext.Current.Response.End()
Один из моих самых популярных блогов, как генерировать документ Excel из кода .NET, используя разметка Excel XML (это не OpenXML, это стандартный Excel XML) - http://www.aaron-powell.com/linq-to-xml-to-excel
Я также связать прочь к более простой способ сделать это с VB 9.
Хотя это код .NET 3.5, его можно легко сделать в .NET 2.0 с помощью XmlDocument и таким образом создать узлы.
Тогда просто нужно установить правильные ответные заголовки и потоковое воспроизведение в ответ.
Демоверсия VB9 - это потрясающе! – JBRWilkinson
Просто заметьте, но эта ссылка уже не актуальна ... –
@KyleC исправлено, он использовал URL для моего старого блога –
SpreadsheetGear для .NET будет делать это. Вы можете найти кучу живых образцов ASP.NET с источником C# & VB.NET на this page.
Отказ от ответственности: У меня есть SpreadsheetGear ООО
Я использую почти точно такой же код, как CodeKiwi. Я бы использовал это, если у вас есть DataTable и вы хотите передать его в клиентский браузер.
Если вы хотите получить файл, вы также можете сделать простой цикл через каждую строку/столбец, создать CSV-файл и, я думаю, предоставить ссылку на клиента - вы можете использовать расширение файла CSV или XLS. Или, если вы передаете результирующий файл клиенту, он предложит им открыть или сохранить его на диск.
Перехваты (в последний раз я их пробовал) отлично подходит для небольших наборов данных, но не масштабировался хорошо - ужасно медленно для больших наборов данных.
Если вы можете отображать свои данные в элементе управления GridView, он по своей сути поддерживает «щелчок правой кнопкой мыши -> Экспорт в Excel» без необходимости писать какой-либо код.
- 1. Как я могу экспортировать Json в Excel?
- 2. Asp.net Я должен экспортировать данные в Excel
- 3. Как я могу заполнить мою страницу изображениями?
- 4. Могу ли я использовать мою главную страницу ASP.NET с MVC4?
- 5. как я могу экспортировать мою базу данных mysql в webmatrix3
- 6. Как я могу экспортировать в CSV в приложении ASP.NET MVC?
- 7. ASP.NET [Обновить мою страницу :)]
- 8. Как я могу экспортировать мою php-страницу в PDF, используя php?
- 9. Как я могу экспортировать даты?
- 10. Как избежать времени ответа на мою веб-страницу в ASP.NET?
- 11. Как я могу добавить палитру sitemap в мою страницу Tridion?
- 12. Как я могу экспортировать данные из Excel в png?
- 13. Как я могу экспортировать ответы на matlab в excel?
- 14. Как я могу экспортировать имена из struct в файл excel?
- 15. Как я могу экспортировать значение форматирования ячейки datagridview в excel?
- 16. Как я могу экспортировать проблемы GitHub в Excel?
- 17. Как я могу экспортировать ячейки Excel в определенные теги HTML?
- 18. Как я могу экспортировать таблицу Excel в качестве изображения?
- 19. Сохраните мою страницу ASP.NET MVC как pdf
- 20. Почему я не могу получить мою веб-страницу для перехода на запрошенную страницу через VBA Excel
- 21. Как я могу экспортировать данные с листа Excel в веб-страницу?
- 22. Как экспортировать в Excel?
- 23. Как я могу сделать мою домашнюю страницу wp-login.php?
- 24. Как я могу перезагрузить мою страницу, потеряв диаграмму внутри холста?
- 25. JavaScript: Как я могу остановить SetTimout, перезагружая мою страницу?
- 26. Как я могу наследовать мою страницу из класса вместо таблицы?
- 27. Почему я не могу получить facebook как мою страницу?
- 28. Как я могу заставить фантом «выполнить» мою страницу?
- 29. В asp.net-mvc, как я могу реорганизовать мою страницу site.master для поддержки двух разных основных представлений?
- 30. Как я могу экспортировать datatable в MS word 2007, excel 2007, csv из asp.net?
Следует также отметить, что некоторые люди (GASP!) Не имеют превосходства, поэтому, возможно, вам стоит просто сбросить его в CSV и позволить им понять это. – hunter
Возможно, вы также хотите убедиться, что вы выводите необработанную таблицу, которую может понять Excel. –
Вы должны сделать больше, чем это. В противном случае экспортированный «документ excel» будет содержать ссылки на изображения на вашем сайте, фильтры, кнопки и т. Д. – Tundey