ASP.NET ReportViewer在本地模式下速度非常慢

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将帮助您在半个时间内加载报表。您可以在您的案例中进行尝试。此问题的最新内容可以在此处找到,并且看起来可能会在

我在本地模式下使用.NET4.5和ReportViewer 11。我的报告呈现速度非常慢(10分钟)。我发现在web.config中添加
可以解决这个问题,它确实解决了。报告呈现时间从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网站来查看报告,但维护两个网站和所有重复代码的额外工作是不值得的。