关于RDLC绑定数据源的问题~

一本正经道 2016-09-22 03:09:50
如题,最近开始为WPF项目做RDLC报表,但是报表数据源绑定方式难以理解,向各位求助。

1、有一张简单的Sales报表,里面就是简单统计销售数据,粗略设计如下:


2、绑定的数据源是实体对象,定义如下:

public class SalesAnalysisModel
{
public int Id { get; set; }
public string Name { get; set; }
public string NickName { get; set; }
}


4、后台代码:

DataTable dt = new DataTable();
dt.Columns.Add("Id", typeof(int));
dt.Columns.Add("Name", typeof(string));
dt.Columns.Add("NickName", typeof(string));
dt.Rows.Add(111, "Jon Skeet", "B3456123");
dt.Rows.Add(222, "Jacky", "U3884912");

ReportDataSource reportDataSource = new ReportDataSource();

reportDataSource.Name = "ReportDataSet";
reportDataSource.Value = dt;

reportViewer.Reset();
reportViewer.LocalReport.ReportPath = Directory.GetCurrentDirectory() + "SalesAnalysis.rdlc";
reportViewer.LocalReport.DataSources.Add(reportDataSource);
reportViewer.RefreshReport();


3、现在遇到的问题是,报表中需要显示日期和类别的数据。由于dt中存放的就是实体对象内容,所以这些值也不能直接放入到dt中,请问各位,有什么方法传递dt之外的数据吗?
...全文
956 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
一本正经道 2016-09-23
  • 打赏
  • 举报
回复
再补充下楼上,我添加了两个参数,首先后台:

            ReportParameter rp = new ReportParameter("SignInTime", new DateTime(2001,01,01).ToString());
            ReportParameter rp1 = new ReportParameter("Types", "本季度");
            reportViewer.LocalReport.SetParameters((new ReportParameter[] {rp, rp1}));
            reportViewer.RefreshReport();
然后在RDLC文件中添加参数关联,只要在“报表数据”工具栏中添加参数,参数名称和类型与后台定义相同即可; 或者在RDLC中这样写参数也行:=Parameters!SignInTime.Value
一本正经道 2016-09-23
  • 打赏
  • 举报
回复
引用 1 楼 grrlove2003 的回复:
日期时间可以用报表中的变量进行赋值并传递 List<ReportParameter> parameterList = new List<ReportParameter>(); ReportParameter parameterBalancePaid = new ReportParameter("BalancePaid", dr.BalancePaid); report.SetParameters(parameterList);
原来是这样,谢谢指导~
AnotherGrank 2016-09-22
  • 打赏
  • 举报
回复
日期时间可以用报表中的变量进行赋值并传递 List<ReportParameter> parameterList = new List<ReportParameter>(); ReportParameter parameterBalancePaid = new ReportParameter("BalancePaid", dr.BalancePaid); report.SetParameters(parameterList);

4,816

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 图表区
社区管理员
  • 图表区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧