【问题标题】:Converting RDL report to RDLC for use in MVC将 RDL 报告转换为 RDLC 以在 MVC 中使用
【发布时间】:2023-03-27 23:36:01
【问题描述】:

我有一个现有的 RDL 报告,我想将其转换为 RDLC 报告以用于 MVC 应用程序。

根据MSDN Site的转换方法是将.rdl文件重命名为.rdlc,将其包含在项目中,然后使用ReportViewer控件选择数据源。

作为 MVC,我的页面上没有 ReportViewer 控件,我使用 this post 帮助我将报告呈现到响应流中。

我已将 rdl 重命名为 rdlc 并将其包含在我的项目中,但尝试打开它时出现以下错误:

报告定义无效。 详细信息:报告定义有一个 无效的目标命名空间 'http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition' 无法升级。

任何想法如何将 rdl 转换为 rdlc 而无需重新编写?

【问题讨论】:

    标签: asp.net-mvc reporting-services rdlc


    【解决方案1】:

    实际上,您可以将 .RDL 转换为 .RDLC。将报告复制到项目的报告文件夹中,将扩展名从 .RDL 重命名为 RDLC。只要确保您有 Microsoft.ReportViewer.Webforms 参考。我使用报告生成器创建了大量报告,在那里构建和测试它们,然后将它们复制到我的项目 (MVC) 中。只是我的 2 美分。

    【讨论】:

    • 好的,你是如何指定数据源和数据集的——因为它们是在 rdl 文件中编码的?您是否删除了 rdl 文件中的引用?,将引用指向其他地方?任何添加的信息将不胜感激。
    【解决方案2】:

    更正之前的答案:您不能使用 VS 2005 或 VS 2008 ReportViewer 控件在本地模式下呈现 SSRS 2008 RDL 文件,因为 SSRS 2008 中的架构已更改,但控件已更改没有达到标准。 VS 2010 带有一个显然支持 SSRS 2008 架构的 ReportViewer 控件。

    如果支持该架构,则无需转换(除了将文件从 RDL 重命名为 RDLC,这是它在 VS 2005 环境中的工作方式)。

    请参阅my question on MSDN 了解此问题。

    【讨论】:

    • 我正在使用 VS 2008,请您帮我了解如何将 SSRS 2008 .rdl 文件转换为与 VS 2008 一起使用。
    【解决方案3】:

    您无法将 SQL Server 2008 Reporting Services 报告 .RDL 转换为 .RDLC - Microsoft 只知道原因.....

    请参阅 Bill Vaughn 的 Retraction: The ReportViewer Control does NOT support SQL Server 2008 RDL in Local Mode 了解专家见解。

    简而言之:目前,Microsoft 没有在 Reporting Services 2008 中将 RDL 转换为 RDLC 的可行案例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-11-17
      • 1970-01-01
      • 2012-01-24
      • 1970-01-01
      • 1970-01-01
      • 2017-08-25
      • 1970-01-01
      相关资源
      最近更新 更多