.NET 报表工具教程 - 2
通过代码加载数据的第二个教程 - Sqlite
引言
这是为 .NET 开发者提供的 ReportMax 免费报表工具的第二个教程 (http://www.cppmax.com)。作为前提条件,您需要阅读 教程 1。本教程向开发者展示如何通过代码连接到几乎任何数据源(在本例中为 Sqlite),而无需使用 Ole DB 提供程序。
背景
如果您有自己的数据库访问方法,或者无法访问该数据源的 Ole Db 提供程序,或者希望访问自定义数据源(例如 XML 文件),则需要重写 SetDataSource
事件并编写自己的代码来从数据库读取数据并将其绑定到报表。在本例中,我将展示如何使用 System.Data.Sqlite.dll 连接到 Sqlite 数据库,并填充数据集供报表读取。
Using the Code
您需要 ReportMax 2.3 版本。请确保您拥有此版本,即使您昨天才下载它。它正在积极开发中,并且经常更新。
报表设计器
- 如果您尚未在教程 1 中执行,请按照步骤创建报表。
- 确保 ConnectionString 和 SQL 属性为空。
- 确保
ReportFile
属性设置为示例中的正确 MainReport.rpm 路径。
报表查看器
- 从示例文件夹中添加对 System.Data.Sqlite.dll 的引用。由于这是一个版本 2.0 DLL,您需要启用混合程序集模式。创建或打开 SqliteReportMaxSample.exe.config 并粘贴以下代码。将此文件放置在可执行文件所在的目录中
<?xml version="1.0" encoding="utf-8" ?> <configuration> <startup useLegacyV2RuntimeActivationPolicy="true"> <supportedRuntime version="v4.0" /> </startup> <runtime> <generatePublisherEvidence enabled="false" /> </runtime> </configuration>
- 单击表单设计器上的
ReportMaxViewer
控件。单击属性窗口中的“事件”。双击Report_SetDataSource
事件。将创建一个事件处理程序,并将焦点移动到代码编辑器。 - 在文件顶部编写以下语句
using System.Data.Sqlite;
- 将以下代码粘贴到
SetDataSource
事件处理程序中dataset = new DataSet(); string connString = string.Format("Data Source={0};Version=3;", "..\\..\\Cities.db"); SQLiteConnection con = new SQLiteConnection(connString); con.Open(); string sql = "SELECT Code, CountryName, CityName, City.Population FROM Country, City WHERE Country.Code = City.Country ORDER BY CountryName;"; SQLiteDataAdapter da = new SQLiteDataAdapter(sql, con); da.Fill(dataset); con.Clone();
- 运行应用程序。您应该看到报表。
关注点
该示例项目与此提示一起提供。
历史
- 首次发布