首页 > 解决方案 > SSRS Web 应用程序错误。有版本问题

问题描述

这是我所拥有的,我确定它是版本控制,但我似乎无法弄清楚。Visual Studio 2019 框架:4.7.2

这是 Framework 3.5,我升级到了 4.7.2 版。它一直在工作,直到我打开要编辑的报告,然后它想要编辑报告(RDLC)。

错误1:严重性代码描述项目文件行抑制状态错误类型“Microsoft.Reporting.WebForms.ReportViewer”存在于“c:\Windows\assembly\GAC_MSIL\Microsoft.ReportViewer.WebForms\9.0.0.0__b03f5f7f11d50a3a\Microsoft.ReportViewer”中。 WebForms.dll' 和 'c:\Windows\assembly\GAC_MSIL\Microsoft.ReportViewer.WebForms\10.0.0.0__b03f5f7f11d50a3a\Microsoft.ReportViewer.WebForms.dll' D:\Development\Work\asedra\Website\Reports\RptViolation.aspx 44

错误 2:ASP.NET 会话已过期

网络配置:

 <buildProviders>
        <add extension=".rdlc" type="Microsoft.Reporting.RdlBuildProvider, Microsoft.ReportViewer.WebForms, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91"/>
 </buildProviders>

 <assemblies>
        <add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
        <add assembly="Microsoft.ReportViewer.DataVisualization, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
        <add assembly="Microsoft.ReportViewer.ProcessingObjectModel, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
        <add assembly="Microsoft.SqlServer.Types, Version=14.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91"/>
      </assemblies>

RDLC

<Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">

网页 (.aspx)

<%@ Register Assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" Namespace="Microsoft.Reporting.WebForms" TagPrefix="rsweb" %>[![enter image description here][1]][1]

标签: reporting-services

解决方案


Error1ReportViewer像这样在 .aspx 上注册

<%@ Register assembly="Microsoft.ReportViewer.WebForms" namespace="Microsoft.Reporting.WebForms" tagprefix="rsweb" %>

添加到 web.config 这一行

<system.webServer> <handlers> <add name="ReportHandler" verb="*" path="Reserved.ReportViewerWebControl.axd" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> </handlers> </system.webServer>

错误 2:在 SQL 服务器上存储会话状态。这是一个指南:如何:配置 SQL Server 以存储 ASP.NET 会话状态

基本上,您需要创建ASPState数据库,激活ASP.NET 状态服务并将这一行添加到 web.config:

<sessionState mode="SQLServer" sqlConnectionString="data source=127.0.0.1;user id=<username>;password=<strongpassword>" cookieless="false" timeout="20" />


推荐阅读