2
votes

I am developing a web application project in Visual Studio 2010. It is published to a Windows 2008 server.

I have added references to:

CrystalDecisions.CrystalReports.Engine

CrystalDecisions.Shared

CrystalDecisions.Web

And added CrystalReportViewer to a .aspx page.

The crystal report files that are to be displayed by the viewer are on the server the application is published to.

If I run the application locally - it works fine and the reports are displayed in the viewer.

If I publish the application to the server, it falls over with a 'log4net' missing assembly message.

Do I need to install something from Crystal Reports on the server?

2

2 Answers

3
votes

Yes- you will need to install the relevant Crystal Reports runtimes/redistributes;

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

Should have what you need.

If you get trouble with versions try fixing by adding this to your app/web .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>
0
votes

I was able to resolve that error my just ticking the Enable 32 bit application to true from advanced settings in IIS. Click the app pool you selected>adv settings>a dialog will pop up.