s-s-rS 报告未在 ASP.NET 网站中呈现
Posted
技术标签:
【中文标题】s-s-rS 报告未在 ASP.NET 网站中呈现【英文标题】:s-s-rS report not rendering in ASP.NET website 【发布时间】:2015-02-27 14:54:12 【问题描述】:我们已经创建了一些 s-s-rS 报告,这些报告又可以使用 ReportViewer 控件在 ASP.NET 页面中提供。 报告的呈现时间从 8 分钟到 15 分钟不等(一份巨大的报告)。
注意:报告没有分组或重格式。 数据量大,查询运行时间长。
这些报告在 ASP.NET 网站上运行时会尝试加载,但没有结果显示并出现空白屏幕。
尝试的解决方法:
• 增加了 Reporting Server Web 中的执行超时
Config:<httpRuntime executionTimeout="36000" />
• RsreportserverConfig 更改:
<Add Key="SecureConnectionLevel" Value="0"/>
<Add Key="CleanupCycleMinutes" Value="36000"/>
<Add Key="SQLCommandTimeoutSeconds" Value="0"/>
<Add Key="MaxActiveReqForOneUser" Value="20"/>
<Add Key="DatabaseQueryTimeout" Value="0"/>
<Add Key="RunningRequestsScavengerCycle" Value="60"/>
<Add Key="RunningRequestsDbCycle" Value="60"/>
<Add Key="RunningRequestsAge" Value="30"/>
<Add Key="MaxScheduleWait" Value="5"/>
<Add Key="DisplayErrorLink" Value="true"/>
<Add Key="WebServiceUseFileShareStorage" Value="false"/>
• 更改网站的 WebConfig 以增加超时:
<httpRuntime maxRequestLength="90000" executionTimeout="36000" requestValidationMode="2.0" />
请提出建议。
【问题讨论】:
我知道这可能过于简化了,但我之前曾在背面咬过这一口。您是否在为您部署到的站点设置的浏览器中设置了兼容性视图设置。在某些情况下,兼容性视图设置不允许报表在屏幕上呈现。在某些情况下,它只会阻止加载图标,而在其他情况下,它根本不会显示任何内容。 那么为什么要渲染其他报告。这个问题只是少数人。 s-s-rS 中的某些功能即使在 IE 中也不能在浏览器中“玩得很好”,这很奇怪,因为它们都是微软的产品。我以前曾影响过同一站点部署上的不同报告。我不是 100% 知道报告的哪些设置或属性会导致这种情况发生,但我认为值得将其扔掉。 我检查了我的来源:我发现以下内容:您的浏览器不支持脚本或已配置为不允许脚本。 b) 报表查看器 Web 控制 HTTP 处理程序尚未在应用程序的 web.config 文件中注册。添加 到 web.config 文件的 system.web/httpHandlers 部分, 【参考方案1】:在IIS
中尝试这些步骤:
打开IIS
。转到 > 应用程序池。右键单击您的应用程序池。选择“设置应用程序池默认值”。更新如下:
-
空闲超时(分钟):给 20 分钟
最大工作进程:将此设置为 1。(问题背后的实际原因是,在多个工作进程的情况下,
如果我们请求,处理程序无法找到预期的会话状态数据
第二次。
-
将私有内存限制和虚拟内存限制设置为零 (0)。
希望它会起作用:)
【讨论】:
第一点是我们包含的内容之一。除此之外,在具有报表查看器控件的 asp.net 页面中实际添加 AsyncPostBackTimeout 属性最终解决了问题-只需重新编译 rdl 中正在使用的存储过程。
希望它能解决您的问题。
【讨论】:
以上是关于s-s-rS 报告未在 ASP.NET 网站中呈现的主要内容,如果未能解决你的问题,请参考以下文章
通过 ASP.Net s-s-rS ReportViewer 呈现后更改 Excel 中的行高
如何使用 c# 在 asp.net 页面中部署或显示 s-s-rS 报告?
使用 s-s-rS 和 ASP.NET 合并以 Pdf 格式生成的报告
为啥 .Mobile.cshtml 未在 ASP.NET Core C# Razor Pages Web 应用程序中呈现?