在asp.net中将Datetime转换为String

时间:2012-04-24 15:36:11

标签: asp.net datetime

我正在调用datalist中添加的列之一,如:

<asp:Label ID="lblDate" runat="server" Text='<%# Eval("DateAdded") %>'></asp:Label>

在显示屏上显示24/04/2012 12:07:52我想显示:2012年4月,

任何人都可以提供有关如何获得此显示的任何帮助 谢谢 更新:

我试图这样做没有成功:

<asp:Label ID="lblDate" runat="server" Text='<%# Eval("DateAdded").ToString("yyyyMM") %>'></asp:Label>

更新2 [工作]:

'<%# Eval("DateAdded" ,"{0:MMMM yyyy}") %>'>

2 个答案:

答案 0 :(得分:2)

你几乎拥有它。这样的事情应该有效:

Text='<%# Eval("DateAdded", "{0:MMMM yyyy}") %>'

您的示例的问题是Eval函数返回类型object,因此它不知道如何应用格式。 Eval函数重载(上面)接受一种格式,可以在幕后计算所有这些,但你也可以通过将值转换或转换为DateTime来解决这个问题:

Text='<%# ((DateTime)Eval("DateAdded")).ToString("MMMM yyyy") %>'

答案 1 :(得分:0)

您可以使用此:

DateTime.Now.ToString("MMMM d, yyyy h:mm tt");