5

如下图所示,RDLC 支持 DateTime 参数类型。 在此处输入图像描述

我正在尝试像这样设置参数,但是这段代码编译时不会出现错误,即没有构造函数接受这种类型的参数:

var p = new Microsoft.Reporting.WinForms.ReportParameter("ReportParameter1", DateTime.Now);
LocalReport.SetParameters(p);

有没有办法设置 DateTime 甚至 DateTime?(可为空)作为参数,因此它可以用于进一步的报告计算而无需将其转换为字符串?

4

2 回答 2

2

ReportParameter 的构造函数都没有使用 DateTime。看这里。

您可能可以使用它:

var p = new Microsoft.Reporting.WinForms.ReportParameter("ReportParameter1", DateTime.Now.ToString("MM/dd/yyyy"));
于 2013-05-13T14:14:43.773 回答
0

这是一个老问题,但最近我在尝试将可为空的日期时间作为参数传递给报告时遇到了这个问题。我对待他们的方式是这样的;

  private DateTime? datumOd = null;
  private DateTime datOd;
  datOd = datumOd.HasValue ? datumOd.Value : DateTime.Now.AddYears(-20);
  if (datumOd.HasValue)
        {
            parameters[0] = new ReportParameter("DatumOd", datOd.ToString("dd.MM.yyyy 
            HH:mm"));
        }
        else
        {
            parameters[0] = new ReportParameter("DatumOd");
        }
于 2019-02-25T09:02:09.577 回答