将.rdlc部署到服务器的问题。 (即带有本地报告的ReportViewer)

时间:2009-09-19 00:14:49

标签: reporting-services reporting reportviewer

我想发布我的网络应用程序并使用Microsoft ReportViewer查看报告。一切都在本地工作,但在发布时我遇到了一些令人不安的错误。最后,我似乎遇到了一个我无法修复的问题。

到目前为止,我已经解决了前三个问题......

  1. 安装Miscrosoft报告 Viewer Redistributable 2008
    包裹在我的服务器上。
  2. 将我的“rdlc”文件更改为“内容”并删除了rdlc web.config中的buildProvider 文件。
  3. 在IIS中为ReportViewer配置了托管处理程序
  4. 最后,ReportViewer至少是可见的,似乎“似乎”试图加载报告。但是现在我收到以下错误:

      

    [InvalidCastException:无法投射   对象类型   'Microsoft.Reporting.WebForms.ReportHierarchy'   输入   'Microsoft.Reporting.WebForms.ReportHierarchy'。]   Microsoft.Reporting.WebForms.ReportDataOperation..ctor()   +253 Microsoft.Reporting.WebForms.HttpHandler.GetHandler()   +669 Microsoft.Reporting.WebForms.HttpHandler.ProcessRequest(HttpContext   上下文)+13
      System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()   +181 System.Web.HttpApplication.ExecuteStep(IExecutionStep   步,布尔& completedSynchronously)   75

    太棒了!当然你不能将一个对象转换为它已经存在的类型!有人知道如何解决这个问题吗?

    谢谢,
    贾斯汀

3 个答案:

答案 0 :(得分:1)

当我做第3步时,结果很好。 “在IIS中为ReportViewer配置了托管处理程序”

我注册了错误的一个。系统有一个v8.0和一个v9.0。选错了50-50的可能性,我赢了。

对于那些认为对话框不需要调整大小的人来说,这是一个教训...他们总是应该这样,你可以看到内容。版本号在下拉列表中不可见,您正盯着2个相同的条目!!!

无论如何......如果遇到此问题,请检查您在Visual Studio中的版本是否与报表服务器计算机上的托管处理程序匹配。

答案 1 :(得分:0)

如果您没有将Visual Studio升级到SP1,则需要按this MSDN thread.

进行升级

答案 2 :(得分:0)

您是否在服务器上安装了.Net 3.5 SP1?