экспорт в файл Excel из веб-приложения - PullRequest
0 голосов
/ 15 декабря 2011

Я хочу экспортировать данные в файл Excel (Создать файл Excel и загрузить его с помощью Response).У меня есть DataSet. Я хочу экспортировать, используя свое собственное форматирование. Как и добавление логотипа.Изменение цвета фона некоторых столбцов.Выделение некоторых строк жирным шрифтом.

Проблемы:

  1. Я пытался использовать электронную таблицу xml, но не нашел способа вставить изображение. А также при открытии файла было предупреждениесообщение (потому что оно не в двоичном формате, а скорее в формате xml)

  2. Я также попробовал Excellibrary. Но я не мог использовать цвет фона для любой ячейки. Я обнаружил, что это проблемапревосходная библиотека, которая еще не решена.

Так есть ли эффективный способ экспортировать данные (конечно, это должно быть бесплатно).

Заранее спасибо.

Ответы [ 4 ]

2 голосов
/ 15 декабря 2011

Вы можете достичь желаемого различными способами - например, с помощью HTML-экспорта ... для получения более подробной информации о подходе HTML к созданию файлов Excel с примером кода см. http://www.c -sharpcorner.com/UploadFile/kaushikborah28/79Nick08302007171404PM/79Nick.aspx

Также ознакомьтесь с официальной документацией по адресу http://msdn.microsoft.com/en-us/library/Aa155477%28office.10%29.aspx

Другие параметры для создания файлов Excel:

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

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

Еще один бесплатный вариант см. http://www.codeproject.com/KB/office/OpenXML.aspx

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

1 голос
/ 15 декабря 2011

Просто попробуйте это. Может быть, это поможет вам:

System.IO.StringWriter oStringWriter = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter);
dg.RenderControl(oHtmlTextWriter);
Response.Write(oStringWriter.ToString());
0 голосов
/ 15 декабря 2011

Вот хороший учебник по использованию интерфейса Excel-com в C # и добавлению изображений:

http://csharp.net -informations.com / Excel / CSharp-вставка-картинка excel.htm

0 голосов
/ 15 декабря 2011

Вы пытались использовать библиотеку объектов Microsoft Excel 12.0 (EDIT: теперь будет 14)

Прошло много времени с тех пор, как я ее использовал, но это стандартно в Visual Studio (я думаю) иБиблиотека Microsoft для работы с документами Office.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...