65.9K
CodeProject 正在变化。 阅读更多。
Home

ReportViewer

emptyStarIconemptyStarIconemptyStarIconemptyStarIconemptyStarIcon

0/5 (0投票)

2013 年 10 月 11 日

CPOL

2分钟阅读

viewsIcon

15827

概述 报表查看器控件允许 Web 应用程序开发人员利用功能齐全的报表并以易于

概述 

Report Viewer控件允许Web应用程序开发者利用功能齐全的报表,并以易于使用和直观的界面将其呈现给用户。Report Viewer 2008随Visual Studio一起发布,并集成了报表设计器。报表可以包含表格、聚合和多维数据。ReportViewer控件也有一个WindowsForm版本,用于构建支持报表的自定义应用程序。

ReportViewer允许消费两种类型的报表,在通过web.config文件进行一些配置后。

  • 本地报表:这些报表由客户端应用程序通过ReportViewer控件处理。Visual Studio 2008包含一个“报表项目”模板,方便创建这些类型的报表。本地报表主要面向自定义Web应用程序。
  • 远程报表:这些报表通过Microsoft SQL Server Reporting Services报表服务器托管。ReportViewer控件用作显示机制,用于已经定义并在报表服务器上发布的报表。所有数据处理都在报表服务器本身进行。远程报表主要面向企业环境中的大型应用程序。

ReportViewer是Visual Studio工具箱中最容易被忽视和文档不足的工具之一。在Web环境中使用的主要问题之一是由于模糊的错误消息,这使得很难确定问题所在。通过本文,我打算解决我在为大型企业开发数百个报表时遇到的“陷阱”,包括本地和远程报表模式。

ReportViewer在ASP.NET应用程序中的另一个重要用途是能够通过Reporting Services报表使用网站身份验证。您可以轻松地使用ASP.NET应用程序授予报表权限,而无需处理SSRS身份验证和授权的细节。

ReportViewer最有用且未记录的功能之一是它能够将LinqDataSource作为ReportDataSource使用。虽然Visual Studio在您第一次添加查看器时会自动添加ObjectDataSource,但只有当您计划使用DataSet从数据库收集数据时才有用。但是,随着Linq在数据操作中变得越来越普遍,您需要研究将报表直接绑定到DataContext,而不是在同一个项目中管理DataSet和DataContext对象。

待包含

  • 创建基本报表
  • 将ReportViewer添加到您的Web应用程序
  • 通过ObjectDataSource提供数据
  • 通过DataSet、CodeBehind提供数据
  • 通过LinqDataSource和Linq to SQL提供数据

 

© . All rights reserved.