C#入门(六)—报表的应用

一、水晶报表
1.Pull Model(拉模式)
   所谓的拉模式,也就是驱动程序会自动链接至数据库并视需要来提取数据。
2.Push Model(推模式)
   采用推模式,开发人员必须自行编写代码来链接至数据库,运行SQL命令来创建数据集或数据记录集,并将该对象传递给报表。
   开发人员对数据源拥有更大的自主权与控制权。

   如:可对数据先过滤。能够自各种不同数据源(如:XML、MySQL等)中提取数据记录并交给Crystal Reports来加以打印。
   架构支持:不会破坏三层架构。

3.连接数据实例代码:

 SqlCommand myCom = new SqlCommand();
 myCom.Connection = myCon;
 myCom.CommandText = sb.ToString();

SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = myCom;

DataSet ds = new DataSet();
adapter.Fill(ds, "Orders");

ds.Tables["Orders"].DefaultView.RowFilter = "OrderID="+tbOrderID.Text;
OrderCR1.SetDataSource(ds.Tables["Orders"].DefaultView);

crystalReportViewer1.RefreshReport();
myCon.Close();

二、RDLC报表

1.简单易用的控件,特别是Table控件,非常方便字段在报表上的排列;
2.灵活的可定制性,用XML来描述一个报表相关的一切,不用说了吧?
3.高度可编程性,在你的项目中,甚至不需要有一个报表文件,通过代码就可以实现报表生成、预览和打印等一系列操作;
4.导出的Excel文件格式非常完美,任何其它报表在这方面都不能与之比拟,而且并不需要安装Excel;
5.友好界面支持;

6.绑定数据实例代码:

 this.CustomersTableAdapter.Fill(this.NorthwindDataSet.Customers);

 this.reportViewer1.RefreshReport();

posted @ 2010-04-26 18:30  勇泽  阅读(501)  评论(0编辑  收藏  举报