gpt4 book ai didi

c# - ReportViewer 呈现一个空的 PDF(只有一个白页)

转载 作者:太空宇宙 更新时间:2023-11-03 12:57:50 25 4
gpt4 key购买 nike

我有一个 Asp.Net MVC 4 项目,我正在使用 ReportViewer 生成一些报告。

因为在 MVC 中与 ReportViewer 的兼容性很低或没有兼容性,使用 Chrome 和 Firefox,我的方法是在 PDF 流中呈现 ReportViewer 并像这样简单地返回流:

// using Microsoft.ReportViewer.WebForms.dll [10.0.0.0].

using (var viewer = new ReportViewer())
using (var bc = new MyBusinessClass())
{
viewer.LocalReport.ReportEmbeddedResource = @"MyEmbeddedName";

var dsobj = bc.GetData();

var ds = new ReportDataSource("DsName", dsobj);
var ps = new ReportParameterCollection();

ps.Add(new ReportParameter("ParameterName", DateTime.Now));

viewer.LocalReport.DataSources.Add(ds);
viewer.LocalReport.SetParameters(ps);

string deviceInfo = "some validated info";
string mimeType, encoding, fileNameExtension;
string[] streams;
Warning[] warnings;

var buffer = viewer.LocalReport.Render("PDF", deviceInfo,
out mimeType, out encoding, out fileNameExtension,
out streams, out warnings);

return File(new MemoryStream(buffer), "application/pdf", "MyPdfName.pdf");
}

我已经有一些报告并且都呈现良好。但是现在我正在使用相同的方法创建一个新的,但是当我打开操作时,PDF 是空的,即它只是一页,并且此页面中没有任何内容(空白)。

但如果这还不够奇怪的话,现在我使用 IE(9) 作为浏览器对其进行了测试,报告呈现良好,所以我决定在 FireFox 中尝试,但也一无所获。

问题:

所以这就是我不明白的地方,我在返回之前以 PDF 格式呈现为什么浏览器会影响它?

如果出现任何问题,是否可以强制 ReportViewer 抛出异常?因为现在,不要只得到一个空白页面的错误。

最重要的是,我该如何解决这个问题(在 Chrome 中运行)?

最佳答案

这似乎是最新版本的 Chrome 中的错误。它于 2015 年 10 月 14 日报道,似乎已在最近的版本中得到修复。

对我来说,更新到 Chrome 46.0.2490.80 解决了这个问题。

来源:https://code.google.com/p/chromium/issues/detail?id=543018

关于c# - ReportViewer 呈现一个空的 PDF(只有一个白页),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33283147/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com