Publishing Web site without installing Microsoft Report Viewer

DineshNS picture DineshNS · Aug 23, 2011 · Viewed 41.2k times · Source

I have a web server with ftp access only, and I can't install Microsoft Report Viewer on it.

How do I publish my asp.net app to the IIS without installing ReportViewer?

I have copied following dlls to my site bin folder:

  • Microsoft.ReportViewer.WebForms.dll
  • Microsoft.ReportViewer.Common.dll

Now I am getting error saying:

An error occurred during local report processing.
The definition of the report 'Reports\QuotationViewReport.rdlc' is invalid.
An unexpected error occurred in Report Processing.
Could not load file or assembly 'Microsoft.ReportViewer.ProcessingObjectModel, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.

I can't even find a dll named Microsoft.ReportViewer.ProcessingObjectModel.dll in my local machine.

Is it possible to publish my application without installing ReportViewer ?

Answer

Frédéric picture Frédéric · Jun 21, 2012

Pre-requisite : having Microsoft ReportViewer assemblies installed on your development machine (as answered by webkite).

In Visual Studio, from the Add Reference action of your project, choose browse tab and browse to the GAC. (C:\Windows\assembly\GAC_MSIL).

There, find the Microsoft.ReportViewer.ProcessingObjectModel assembly folder, choose the version sub folder suitable for your needs, and add the assembly as a local reference.

Then locate the assembly in your references list, and switch its Local Copy property to true.

For other report viewer assemblies, you should be able to add them directly from the .Net tab in Add Reference dialog box. Do not forget to switch the Local Copy property to true for them too.

With this setup, the ReportViewer assemblies will be copied to your build directory at each build, and you should be able to copy them easily to your target deployment environment.

You may instead try some of the ReportViewer packages than can be found on NuGet. But none of them seem officialy provided by Microsoft.