if (listBox1.SelectedItem.ToString()== "年")
{
string connstring = "Data Source=.;Initial Catalog=Northwind;Integrated Security=True";
System.Data.SqlClient.SqlConnection conn1 = new System.Data.SqlClient.SqlConnection(connstring);
System.Data.SqlClient.SqlCommand command1 = new System.Data.SqlClient.SqlCommand("select * from Customers", conn1);
System.Data.SqlClient.SqlDataAdapter ada1 = new System.Data.SqlClient.SqlDataAdapter(command1);
DataSet c_ds = new DataSet();
try
{
conn1.Open();
ada1.Fill(c_ds);
}
finally
{
conn1.Close();
command1.Dispose();
conn1.Dispose();
}
this.reportViewer1.Reset();
this.reportViewer1.LocalReport.ReportEmbeddedResource = "report.Report1.rdlc";
//指定数据集,数据集名称后为表,不是DataSet类型的数据集
this.reportViewer1.LocalReport.DataSources.Clear();
this.reportViewer1.LocalReport.DataSources.Add(new Microsoft.Reporting.WinForms.ReportDataSource("CustomDS_Customers", c_ds.Tables[0]));
// this.reportViewer3.LocalReport.DataSources.Add(c_ds);
//显示报表
this.reportViewer1.RefreshReport();
}
else if (listBox1.SelectedItem.ToString() == "月")
{
string connstring = "Data Source=.;Initial Catalog=Energy;Integrated Security=True";
System.Data.SqlClient.SqlConnection conn1 = new System.Data.SqlClient.SqlConnection(connstring);
System.Data.SqlClient.SqlCommand command1 = new System.Data.SqlClient.SqlCommand("select * from User_energy", conn1);
System.Data.SqlClient.SqlDataAdapter ada1 = new System.Data.SqlClient.SqlDataAdapter(command1);
DataSet c_ds = new DataSet();
try
{
conn1.Open();
ada1.Fill(c_ds);
}
finally
{
conn1.Close();
command1.Dispose();
conn1.Dispose();
}
this.reportViewer1.Reset();
this.reportViewer1.LocalReport.ReportEmbeddedResource = "report.Report2.rdlc";
this.reportViewer1.LocalReport.DataSources.Clear();
this.reportViewer1.LocalReport.DataSources.Add(new Microsoft.Reporting.WinForms.ReportDataSource("User_energy", c_ds.Tables[0]));
this.reportViewer1.RefreshReport();
}
本文介绍了一种根据用户选择的不同选项(年或月),动态切换数据库连接、执行SQL查询并填充数据集的方法。之后,根据不同的数据集更新报表资源,并通过ReportViewer组件展示出来。该过程包括了数据库连接管理、数据集填充、报表资源指定及报表刷新等关键步骤。
7990

被折叠的 条评论
为什么被折叠?



