我正在使用Visual Studio的报告系统(不是Crystal Reports而是RDLC)。它工作正常,但我的问题是,当将日期字段上的“格式代码”设置为“D”时,它将其格式化为英语日期(2009年6月24日星期三),而不是使用我的CultueInfo(德语)和我无法找到如何将文化信息传递给报告或日期格式。
答案 0 :(得分:6)
您也可以为报告设置语言属性: http://i31.tinypic.com/1z3zbjd.jpg
答案 1 :(得分:2)
如果您无法在报表上设置文化,请尝试在您的类上创建一个执行转换的属性,并将其作为字符串返回。
public class YourClass
{
public DateTime Date{ get; set; }
public string FormattedDate
{
get { return Date.ToString("D", new System.Globalization.CultureInfo("de-DE")); }
}
}
您可以在报告中以“= Fields!FormattedDate.Value”的形式访问它。
答案 2 :(得分:1)
我知道这个问题很久以前就得到了解答,但在格式化RDLC报告中的日期时,我需要获得一份报告来使用当前的UI文化(而不是硬编码文化)。
对于当前的UI文化,您需要将报告的语言属性设置为=User!Language
。希望这有助于任何遇到同样问题的人。
答案 3 :(得分:-3)
=Format(Fields!FormattedDate.Value).("dd/MM/yyyy")