Asp.Net 中Report Service (RDLC)动态绑定数据-学习笔记

Asp.Net 中Report Service (RDLC)动态绑定数据-学习笔记

1)托拽ReportViewer控件到aspx页面,此时,系统会自动添加相关引用,修改Web.config设置;
2)修改ReportViewer属性,添加对报表文件的引用:<LocalReport ReportPath="Report.rdlc"></LocalReport>
页面代码:

1    <form id="form1" runat="server">
2    <div>
3        <rsweb:ReportViewer ID="ReportViewer1" runat="server" Height="703px" Width="845px">
4        <LocalReport ReportPath="Report.rdlc"></LocalReport>
5        </rsweb:ReportViewer>  
6    </div>
7    </form>

3)新建数据格式文件(.XSD文件),并在xsd文件中新建一个DataTable
4)新建RDLC报表文件,根据我们的xsd文件格式进行报表设计
5)程序中动态绑定数据(dataSource)和参数(Parameter)
代码:

CS:

 1public partial class _Default : System.Web.UI.Page 
 2{
 3    protected void Page_Load(object sender, EventArgs e)
 4    {
 5        LoadReport();
 6    }

 7    private void LoadReport()
 8    {
 9        this.ReportViewer1.ProcessingMode = ProcessingMode.Local;
10
11        ReportViewer1.LocalReport.EnableHyperlinks = true// if there is URL links in your RDLC, this is need
12        ReportViewer1.LocalReport.DataSources.Clear();
13
14        // SetParameters
15        List<ReportParameter> paras = new List<ReportParameter>();
16        paras.Add(new ReportParameter("Name1""Outer parameter"));
17        this.ReportViewer1.LocalReport.SetParameters(paras);
18
19        // Generate data automatically
20        ReportViewer1.LocalReport.DataSources.Add(new ReportDataSource("DataSet1_T1", GetTableT1()));   
21
22        ReportViewer1.LocalReport.Refresh();
23    }

24    private DataTable GetTableT1()
25    {
26        DataTable dt = new DataTable();
27        dt.Columns.Add("Key"typeof(string));
28        dt.Columns.Add("Group1"typeof(string));
29        dt.Columns.Add("Group2"typeof(string));
30        dt.Columns.Add("Value"typeof(double));
31
32        dt.Rows.Add("K1""G1""M1"34);
33        dt.Rows.Add("K1""G1""M2"22);
34
35        dt.Rows.Add("K1""G2""M1"76);
36        dt.Rows.Add("K1""G2""M2"55);
37
38        dt.Rows.Add("K2""G6""M1"155);
39        dt.Rows.Add("K2""G6""M2"715);
40
41        dt.Rows.Add("K2""G7""M1"535);
42        dt.Rows.Add("K2""G7""M2"554);
43
44        return dt;
45    }

46}

47

页面:

 1<body>
 2    <form id="form1" runat="server">
 3    <div>
 4        <rsweb:ReportViewer ID="ReportViewer1" runat="server" Height="703px" Width="845px">
 5        <LocalReport ReportPath="Report.rdlc"></LocalReport>
 6        </rsweb:ReportViewer>
 7    
 8    
 9    </div>
10    </form>
11</body>


 

posted on 2007-09-11 09:04  Jack Niu  阅读(5629)  评论(2编辑  收藏  举报

Affiliate Marketing and Web Technology