【问题标题】:Crystal reports display a blank page in C#, asp.netCrystal 报表在 C#、asp.net 中显示空白页
【发布时间】:2018-09-19 22:29:42
【问题描述】:

我在 vs2008 中有一个网站。我创建了一个水晶报表,它在开发环境中运行良好。但是当我将我的网站发布到 IIS 时,报告永远不会显示。它只是显示一个空白页。谁能告诉我如何解决这个问题? 谢谢

【问题讨论】:

  • 你能显示页面的一些标记吗?您确定服务器具有所有必需的组件吗? CR 对于部署所有必需的组件真的很痛苦。
  • 您是否使用默认网站?我想你不是……

标签: c# asp.net crystal-reports


【解决方案1】:

如果您将应用程序安装在与Default WebSite 不同的网站上,请尝试以下操作:

解决方案

  • aspnet_client文件夹从c:\inetpub\wwwroot文件夹复制到新的网站根文件夹。

或在 IIS 中:

  • 创建一个名为aspnet_client 的虚拟目录,该目录指向新网站内的c:\inetpub\wwwroot

问题原因

使用客户端工具(浏览器的调试窗口)或服务器工具(IIS 日志),您会发现一些必需的 Crystal 文件,如 crv.jsstyle.css 没有提供。这是因为这些文件由 CR 安装程序放置在 wwwroot\aspnet_client 文件夹中,但无法从安装在同一台机器上的其他网站访问。

我可以看到你使用不同版本的软件和不同的配置,但我认为你有同样的问题。

【讨论】:

    【解决方案2】:

    确保文件夹“2_0_50727”存在于 C:\inetpub\wwwroot\aspnet_client\system_web 或您的 SiteRootFolder\aspnet_client\system_web

    如果不存在,请将文件夹“4_0_30319”复制为“2_0_50727”。

    【讨论】:

      【解决方案3】:

      如果您使用“提交”按钮查看报告,请确保在单击“提交”按钮时执行完整的回发。您会发现报告中的所有页面都可以正常工作。

      注意:使用带有更新面板的触发器来实现完整的回发(触发器的控件 ID 应该是按钮的 ID)。

      【讨论】:

        【解决方案4】:

        完美!解决方案是以这种方式在 IIS 上工作:

        • 将 aspnet_client 文件夹从 c:\inetpub\wwwroot 文件夹复制到新的网站根文件夹。

        • 创建一个名为 aspnet_client 的虚拟目录,指向新网站内的 c:\inetpub\wwwroot

        非常感谢

        【讨论】:

        • 你为什么复制我的解决方案?
        【解决方案5】:

        您需要在 Web 服务器上安装合并模块。您可以从Here下载它们

        【讨论】:

          【解决方案6】:

          检查 Crystal Report 运行时版本,例如,如果您安装 13.0.1 版本并且您的 Visual Studio 使用 13.0.2,则将显示报表但不会显示数据。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多