我有一个带有Telerik Reporting Viewer和C#API服务器的Angle 6客户端应用程序。
我已经与报告设计者创建了一个报告。 该报告具有2个定义如下的dateTime参数:
现在,我在Web服务数据源中使用它:
到目前为止,一切都很好。
我通过这种方式从客户端更新参数值:
let rs = {
report: this.reportName,
authenticationToken: token,
parametersAreaVisible: true,
parameters: {
networkItemsKeys: JSON.stringify(parameters.tags),
token: token,
userName:this.userName,
bestAndWorstSubjectsCount: parameters.numberOfAlarms,
toDate: parameters.toDate,
fromDate: parameters.fromDate
}
} as unknown as JSON;
this.reportSource = rs;
this.reportViewer.setReportSource(rs);
当我查看以这种方式定义的文本框时,我可以看到date参数可以很好地更新:
Report Period: {Parameters.fromDate.Value.toShortDateString()}-{Parameters.toDate.Value.toShortDateString()}
问题是,当我检查Web api中收到的值时,已切换了月份和日期,因此如果日期大于12,则参数值为1/1/0001。我尝试了各种日期管道格式更改,但均未成功。
当我将toDate和fromDate用作字符串参数时,问题已解决,但似乎是一个愚蠢的解决方案,因此我无法在文本框中使用日期类型功能,如.toShortDateString()。 有什么想法吗?
TX 塔尔