如何使用HtmlFormatting将C#datatable导出到Excel中

时间:2015-11-24 17:37:43

标签: c# export-to-excel

我正在使用带有C#的Asp.NET应用程序,其中包含以下数据表

                DataTable dt = new DataTable();
                dt.Columns.Add("S.No", typeof(int));
                dt.Columns.Add("HtmlContent", typeof(int));

                dt.Rows.Add("1", "Hi, I am <b>XXX</b>");
                dt.Rows.Add("2", "<b>Great</b> <i>Work</i>");
                dt.Rows.Add("3","This is Sample Image <img src='smiley.gif' alt='Smiley face' height='42' width='42'>");
                dt.Rows.Add("4", "This is attached file <a href='../Content/FileManager/Documents/Product Review.docx'>../Content/FileManager/Documents/Product Review.docx</a>");

在此DataTable中,HtmlContent列包含链接格式的Html标签,图像标签和文件(PDF或Word或视频或音频)。

要求:

我想将此数据表导出为ex​​cel格式,我的服务器不包含MS-Office Excel ,内容应该在Excel单元格中呈现为Html,如果任何图像文件可用则显示在Excel单元格内,如果任何文件(PDF或Word或视频或音频)可用,则应将该对象嵌入Excel单元格。

请参阅附图,查看我的最终输出。

我在线搜索但无法获得适当的解决方案,请提供一些帮助。

谢谢,

Selvakumar S

attached Image

2 个答案:

答案 0 :(得分:0)

您可能需要查看ClosedXML来完成所需的任务。由于它使用DocumentFormat.OpenXml.dll,因此您无需在服务器中安装MS-Office Excel。有关更多信息,请阅读ClosedXML的documentation.

答案 1 :(得分:0)

http://microsoft-ssis.blogspot.com/2011/03/rowcount-for-execute-sql-statement.html可以使用HTML格式导出到Excel。它是用C#编写的,可以作为库使用,可以在任何.NET平台上使用。 Essential XlsIO

您需要Syncfusion库才能运行示例代码。 如果您符合条件,example source会免费提供整套产品。

注意:我为Syncfusion工作。