ReportViewer Web Server and Windows Forms Controls

The ReportViewer controls display reports that you create locally in Visual Studio as well as remote reports hosted in SQL Server 2008 Reporting Services. In addition, they also provide support for user interaction with the reports. There are two versions of the control: ReportViewer Web server control for ASP.NET pages, and ReportViewer Windows Forms control that you can use with Windows Forms applications. Visual Studio determines which version to use based on the type of project you are using to embed the control. If you are embedding the ReportViewer control on an ASP.NET project, for example, you get the Web server control automatically.

ReportViewer Features

Both versions of the ReportViewer control support the following features:

  • View areas used to display a report, a toolbar, and a document map. The toolbar is configurable and provides run-time features to support navigation in a multipage report, zoom, search, print, and export functionality. A document map appears if you explicitly add one to your report.

  • Support for the following export formats in locally processed reports: Excel, PDF, Word, and Image. When exporting reports on a report server, all export formats supported by the report server are available.

    Note

    When exporting a locally processed report, the Image export format can only be selected programmatically. To do this, use the Render method for ASP.NET and the Render method for Windows Forms.

  • Properties that allow you to configure the processing mode, view areas, and toolbar.

  • Support for local and remote processing modes so that you can control where and how reports are processed. Local processing mode processes a client report definition that is created locally in Visual Studio. Remote processing mode renders a report that fully processed on a SQL Server Reporting Services report server.

  • Programmatic interfaces so that you can customize, configure, and interact with the control through code, including changing the data sources used by the ReportViewer at run time.

Functionality Differences Between the Web Server and Windows Forms Controls

The type of control that you use determines the default presentation format for a report as well as the visual characteristics of the toolbar. Additional differences do exist in report processing and deployment strategies. The following table describes the differences between the ReportViewer Web server and Windows Forms controls:

Default presentation format

The Web server control uses HTML formatting to display a report, while the Windows Form control uses Graphical Device Interface (GDI) to provide a visual experience that is consistent with Windows user interface styles.

Processing

Local report processing is always performed asynchronously in the Windows Forms control. For the Web server control, local report processing is processed through asynchronous postbacks to the IIS server by default, but you can configure it to use synchronous postbacks.

Deployment

The deployment strategy for reports hosted in the Web server control in an ASP.NET application must take session state and Web farm configuration into account.

Browser requirements

The Web server control has browser requirements. To use all of the reporting features that are available in the Web server control, you should use Microsoft Internet Explorer 6.0 or later with scripting enabled. You can use other browsers, but there are some functional limitations in report functionality. For more information, see Browser Support for ReportViewer Web Server Controls.

In addition to understanding the differences between the controls, it is also important to understand the differences between processing modes. For more information, see ReportViewer Controls (Visual Studio).

See Also

Tasks

Walkthrough: Using a Database Data Source with the ReportViewer Web Server Control in Local Processing Mode

Concepts

Deploying Reports and ReportViewer Controls
Printing Reports from ReportViewer
Adding and Configuring the ReportViewer Controls
Configuring and Using the ReportViewer Toolbar

Other Resources

Configuring ReportViewer for Asynchronous Rendering
Optimizing Report Layout for HTML Output (Visual Studio Report Designer)
Report Overview (Visual Studio)