演练:在本地处理模式下将业务对象数据源与 ReportViewer Web 服务器控件一起使用
本演练演示如何在 Microsoft Visual Studio ASP.NET 应用程序中的报表中使用对象数据源。有关业务对象和对象数据源的更多信息,请参见Binding to Business Objects。
请执行下列步骤向 ASP.NET 网站项目添加报表。对于此示例,您将使用 Microsoft Visual C# 创建应用程序。
创建新的 ASP.NET 网站项目
在**“文件”菜单中,指向“新建”,选择“网站”**。
在**“新建网站”对话框的“已安装的模板”窗格中,选择“C#”,然后选择“ASP.NET 网站”。根据 Visual Studio 中的启动设置,“C#”节点可能会显示在“其他语言”**下。
在**“位置”框中,指定项目目录,然后单击“确定”**。
此时将打开网站项目。
创建用作数据源的业务对象。
在**“网站”菜单上选择“添加新项”**。
在**“添加新项”对话框中,选择“类”,键入文件名“BusinessObjects.cs”,然后单击“添加”**。
单击**“是”**将该类放入“App_Code”文件夹。新文件将添加到项目并且在 Visual Studio 中自动打开。
将 BusinessObjects.cs 的默认代码替换为以下代码:
using System; using System.Collections.Generic; // Define the Business Object "Product" with two public properties // of simple datatypes. public class Product { private string m_name; private int m_price; public Product(string name, int price) { m_name = name; m_price = price; } public string Name { get { return m_name; } } public int Price { get { return m_price; } } } // Define Business Object "Merchant" that provides a // GetProducts method that returns a collection of // Product objects. public class Merchant { private List<Product> m_products; public Merchant() { m_products = new List<Product>(); m_products.Add(new Product("Pen", 25)); m_products.Add(new Product("Pencil", 30)); m_products.Add(new Product("Notebook", 15)); } public List<Product> GetProducts() { return m_products; } }
从**“生成”菜单中选择“生成解决方案”。这将为对象创建程序集,并在您向项目中添加报表后,使业务对象“Product”显示在“报表数据”**窗口中。
使用报表向导向项目添加报表
请确保在**“解决方案资源管理器”**中选中了顶级网站。
右击网站并选择**“添加新项”**。
在**“添加新项目”对话框中,选择“报表向导”。为报表键入名称,并单击“添加”**。
这将启动报表向导。
在**“数据集属性”页的“数据源”框中选择“全局”**。
在**“可用数据集”框中,确认选中“Merchant (GetProducts)”**。
单击**“下一步”**。
在**“排列字段”**页中,执行以下操作:
将**“名称”从“可用字段”拖到“行组”**框。
将**“价格”从“可用字段”拖到“值”**框。
单击两次**“下一步”,然后单击“完成”**。
这将创建 .rdlc 文件并在报表设计器中将其打开。所创建的 tablix 会立即显示在设计图面中。
保存 .rdlc 文件。
向网页中添加 ReportViewer 控件
在**“解决方案资源管理器”中,右击 Web 窗体 Default.aspx,然后选择“视图设计器”**。
打开**“工具箱”窗口。从“AJAX Extensions”组中,将“ScriptManager”**控件拖动到设计图面上。
从**“工具箱”的“报告”组中,将“ReportViewer”控件拖动到“ScriptManager”**控件下的网页上。
选择 ReportViewer 控件,通过单击右上角的智能标记标志符号打开智能标记面板。
在**“选择报表”**列表中,选择刚才设计的报表。请注意,ObjectDataSource 控件会显示在 ReportViewer 控件的紧下方,并自动设置为检索您创建的业务对象的内容。
运行此应用程序
- 按**“F5”边运行边调试,或按“Ctrl+F5”**运行而不调试,然后查看报表。
请参阅
参考
LocalReport.SubreportProcessing
LocalReport.SubreportProcessing