【问题标题】:CrystalReportViewer does not display ChartsCrystalReportViewer 不显示图表
【发布时间】:2013-04-03 14:32:43
【问题描述】:

我的 CrystalReportViewer 不会在我的 Crystal Report 中显示图表。我得到一个红色的 X。 我正在使用 C# 和 MVC。我在某处读到我可能需要图像文件夹的虚拟路径,但我不确定这意味着什么,因为我的图表嵌入在报告中......也许我遗漏了一些东西。谁能详细说明一下?

【问题讨论】:

标签: crystal-reports


【解决方案1】:

好的。我想通了......就像我说的那样,MVC 正在处理路由,而不是让 CrystalImageHandler 处理它。所以这里是使 MVC 和 Crystal ReportViewer 显示图像工作的步骤。

  1. 阅读 this link 并按照 web.config 说明进行操作。确保所有程序集都指向版本 12。您实际上需要安装 Crystal Runtime 和/或 Crystal 以获得最新的程序集版本。

  2. 将此行添加到您的global.asax 文件以忽略 CrystalImageHandler 的路由:

    routes.IgnoreRoute("{*allaspx}", new { allaspx = @".*(CrystalImageHandler).*" });
    

【讨论】:

    【解决方案2】:

    嵌入图表/图形的水晶报表也有类似的问题。使用MVC3框架和水晶报表运行时v10

    将以下行添加到 Web.config

    <appSettings>
    <!-- For Crystal reports to render dynamic images (eg. charts, graphs)-->
       <add key="CrystalImageCleaner-AutoStart" value="true" />
       <add key="CrystalImageCleaner-Sleep" value="60000" />
       <add key="CrystalImageCleaner-Age" value="120000" />
      </appSettings>
    
    <system.web>
    <httpHandlers>
          <add verb="GET" path="CrystalImageHandler.aspx" type="CrystalDecisions.Web.CrystalImageHandler, CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
        </httpHandlers>
    
    </system.web>
    

    在 Globalasax 的 RegisterRoutes 方法中添加这个

    /*Added for Crystal reports*/
    routes.IgnoreRoute("{*allaspx}", new { allaspx = @".*(CrystalImageHandler).*" });
    

    【讨论】:

      【解决方案3】:

      pg32conv.dllsscsdk80.dll 复制到Windows\System32

      【讨论】:

        【解决方案4】:

        我在用图表(图形表示)创建水晶报告时也面临同样的问题,我无法获得图表的图像 我在 web.config 文件中添加了一些代码

        &lt;appSettings&gt;&lt;/appSettings&gt; 标签下方 我们有一个像

        这样的标签
        <httpHandlers> </httpHandlers> 
        

        检查我们在上面的 taghttphandlers 之间有代码,

        <add verb="GET" path="CrystalImageHandler.aspx" type="CrystalDecisions.Web.CrystalImageHandler, CrystalDecisions.Web, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
        

        如果它在那里,那么我们肯定会得到图表或条形图的图像 如果它不存在,请添加上面的代码 k

        我希望这对所有人都有用 谢谢。

        【讨论】:

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