ASP.NET ReportViewer在本地模式下速度非常慢
我在本地模式下使用.NET4.5和ReportViewer 11。我的报告呈现速度非常慢(10分钟)。我发现在web.config中添加ASP.NET ReportViewer在本地模式下速度非常慢,asp.net,performance,reportviewer,localreport,Asp.net,Performance,Reportviewer,Localreport,我在本地模式下使用.NET4.5和ReportViewer 11。我的报告呈现速度非常慢(10分钟)。我发现在web.config中添加可以解决这个问题,它确实解决了。报告呈现时间从10分钟变为10秒,但现在系统其他部分中的动态变量无法工作。这就是错误: 只能在同质AppDomain中执行动态操作 有没有办法只在一个页面中设置或具有相同效果的内容?将.net framework更改为3.5将帮助您在半个时间内加载报表。您可以在您的案例中进行尝试。此问题的最新内容可以在此处找到,并且看起来可能会在
可以解决这个问题,它确实解决了。报告呈现时间从10分钟变为10秒,但现在系统其他部分中的动态变量无法工作。这就是错误:
只能在同质AppDomain中执行动态操作
有没有办法只在一个页面中设置
或具有相同效果的内容?将.net framework更改为3.5将帮助您在半个时间内加载报表。您可以在您的案例中进行尝试。此问题的最新内容可以在此处找到,并且看起来可能会在sql server 2012中解决
如果您没有使用4.5特定功能,回滚到3.5是最可行的选择。由于cas设置是web.config的一部分,因此该选项在每页上不可用
考虑为您的报告页面构建一个单页子站点,其中该子站点是一个单独的应用程序,具有3.5应用程序池,可能值得进行快速测试可能无法仅为一页设置信任级别,但是,您可以使用
ReportViewer
控件将页面与新的web应用程序分离,从而与新的应用程序域分离。这样,web.config更改只会影响报表查看器页面
此解决方案还有其他一些好处,如:
- 能够以不同方式扩展报表网站,因为它通常会消耗大量资源
- 能够出于性能原因关闭主网站的会话状态,并在ReportViewer需要会话状态时仅在报告中保持打开状态
- 请使用以下链接了解更多信息
添加:
<trust legacyCasModel="true" level="Full"/>
在Webconfig的配置/system.web部分。
它有助于将报告性能提高10倍。但是会影响MVC项目中的动态对象。是的,我知道,但是你正在失去.net 4.5的好处。我正在使用sql 2012。我曾尝试创建一个单独的3.5网站来查看报告,但维护两个网站和所有重复代码的额外工作是不值得的。