我已经挖了5个小时,但没有发现。有什么方法可以将rdlc生成为HTML。我尝试将RDLC转换为Image,但是我的问题是,生成的图像被切成两半。
答案 0 :(得分:0)
最终找到解决方案(即使不是最佳答案)。因此,基本上,首先转换为Excel,然后将excel转换为html,然后阅读所有文本。我使用FreeSprite.XLS将excel转换为html。
这是我的代码
private string GenerateHTMLReport(ReportViewer rv)
{
string mimeType,
encoding,
fileNameExtension;
Warning[] warnings=null;
string[] streamIds=null;
//Export report
byte[] exportBytes = rv.LocalReport.Render("Excel", null, out mimeType, out encoding,
out fileNameExtension, out streamIds, out warnings);
//convert to excel
FileStream fs = new FileStream("report.xls", FileMode.Create);
fs.Write(exportBytes, 0, exportBytes.Length);
fs.Close();
Workbook workbook = new Workbook();
workbook.LoadFromFile("report.xls");
//convert Excel to HTML
Worksheet sheet = workbook.Worksheets[0];
sheet.SaveToHtml("report.html");
string html =System.IO.File.ReadAllText("report.html");
return "";
}
希望有人会有所帮助。