ReportViewer





0/5 (0投票)
概述 报表查看器控件允许 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提供数据