我是否需要在服务器上安装Crystal Reports中的某些内容?

时间:2012-04-20 11:26:25

标签: .net crystal-reports

我正在Visual Studio 2010中开发一个Web应用程序项目。它发布到Windows 2008服务器。

我添加了对:

的引用

CrystalDecisions.CrystalReports.Engine

CrystalDecisions.Shared

CrystalDecisions.Web

并将CrystalReportViewer添加到.aspx页面。

查看器要显示的水晶报表文件位于发布应用程序的服务器上。

如果我在本地运行应用程序 - 它工作正常,报告将显示在查看器中。

如果我将应用程序发布到服务器,它会丢失一条“log4net”缺失的程序集消息。

我是否需要在服务器上安装Crystal Reports中的内容?

2 个答案:

答案 0 :(得分:3)

是的 - 您需要安装相关的Crystal Reports运行时/重新分发;

http://www.businessobjects.com/jump/xi/crvs2010/us2_default.asp

应该有你需要的东西。

如果您遇到版本问题,请尝试将其添加到您的应用/网站.config:

<runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="CrystalDecisions.CrystalReports.Engine" publicKeyToken="692fbea5521e1304" culture="neutral"/>
        <bindingRedirect oldVersion="xx.x.xxxx.x" newVersion="yy.y.yyyy.y"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="CrystalDecisions.Shared" publicKeyToken="692fbea5521e1304" culture="neutral"/>
        <bindingRedirect oldVersion="xx.x.xxxx.x" newVersion="yy.y.yyyy.y"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="CrystalDecisions.ReportSource" publicKeyToken="692fbea5521e1304" culture="neutral"/>
        <bindingRedirect oldVersion="xx.x.xxxx.x" newVersion="yy.y.yyyy.y"/>
      </dependentAssembly>
      <dependentAssembly>
        ...
    </assemblyBinding>
  </runtime>

答案 1 :(得分:0)

我能够通过IIS中的高级设置将启用32位应用程序设置为true来解决该错误。单击您选择的应用程序池&gt; adv settings&gt;将弹出一个对话框。