如何在.net RDLC报告中更改日期格式?

时间:2013-07-23 05:54:08

标签: rdlc

我需要将我的日期列设置为 01-Jan-2013 ,在rdlc中执行此操作的格式是什么?

我已经给出了

=CDate(Fields!IssuingDate.Value).ToString("dd-mmm-yyyy")

它无法正常工作。任何人都发布了 02-Jul-2013 的格式。

先谢谢。

10 个答案:

答案 0 :(得分:22)

使用此功能,您将获得输出

=CDate(Fields!IssuingDate.Value).ToString("dd-MMM-yyyy")

答案 1 :(得分:14)

可能性1:

我认为正确的格式字符串为"dd-MMM-yyyy"大写M ,请参阅MSDN

我会使用Format(Fields!IssuingDate.Value,"dd-MMM-yyyy")代替ToString()

可能性2:

只需使用Fields!IssuingDate.Value作为TextBox的表达式,并将TextBox的Format属性设置为dd-MMM-yyyy

答案 2 :(得分:6)

也可以通过右键单击RDLC报告中的字段(我们想要更改其格式)来更改日期格式,并且:

  1. 选择“文本框属性”
  2. 然后选择“数字”选项
  3. 然后从多个“日期”选项中选择一个,或指定自定义formatting option
  4. enter image description here

答案 3 :(得分:1)

Expression属性中,设置以下格式,它可以正常工作:

=Format(Cdate(Fields!InvoiceDate.Value),"yyyy/MM/dd")

答案 4 :(得分:1)

不要使用Format()之类的任何格式化函数。 而是右键单击文本框并选择“文本框属性”... 然后从左列中选择数字,并像在Excel中一样设置您想要的格式。

你可以使用Alignment,Fill和Action等许多其他属性。

答案 5 :(得分:0)

CDate(Fields!IssuingDate.Value).ToString("dd-mmm-yyyy")

如下更改它肯定会起作用:

ToString应该是toStringmmm应该是MMM,所以您将拥有:

CDate(Fields!IssuingDate.Value).toString("dd-MMM-yyyy")

答案 6 :(得分:0)

这也有效(当DateValue.Value为null时,并没有失败):

=String.Format("{0:dd-MMM-yyyy}", Fields!DateValue.Value)

答案 7 :(得分:0)

您可以将rdlc编辑为XML,并且只需使用Now()(与DateTime.Now和Format相同)即可。

<Value>="Date: " &amp; Format(Now(), "dd/MM/yyyy HH:mm")</Value>

文件“日期:22/08/2019 10:20”中的结果

答案 8 :(得分:0)

检查XSD中的数据类型为System.DateTimeOffset,如果不将类型更改为System.DateTime,我将无法进行任何格式化。

enter image description here 从查询中将datetimeoffset转换为datetime:

SELECT 
A,
B,
CONVERT(datetime2, MyTable.DateTimeOffsetField, 1) AS DateTimeField
FROM MyTable

将类型更改为DateTime后,所有格式都开始起作用

例如:=Format(Fields!DateTimeField.Vaule, "dd-mmm-yyyy")

答案 9 :(得分:0)

这可能有帮助

= CDate(Fields!Date.Value).ToString("dd-MMM.-yyyy" )