#Eval短日期

时间:2013-01-12 13:59:22

标签: c# asp.net eval

我正在尝试将日期From和date To添加到我的产品中,这些值将作为日期存储在我的数据库中。它们以2013-01-15格式存储。格式不是问题,但是当我在我的应用程序上显示它时,时间会出现(1/15/2013 12:00:00 AM)我该如何删除时间。您可以在下面找到数据绑定方法。

<asp:Label ID="Label4" runat="server" Text='<% # Eval("soDateTo") %>' Font-Bold="False" Font-Size="Small"></asp:Label>

7 个答案:

答案 0 :(得分:53)

在Eval语句中尝试字符串格式: See ASP Forums

有几种格式化日期的方法。

<asp:label id="DateAddedLabel" runat="server" text='<%#
Eval("DateAdded", "{0:d}") %>'></asp:label>

答案 1 :(得分:15)

试试这个;

<asp:Label ID="Label4" runat="server" Text='<% # Eval("soDateTo", "{0:dd/MM/yyyy}") %>' Font-Bold="False" Font-Size="Small"></asp:Label>

答案 2 :(得分:4)

与Daniel的解决方案非常相似,但它处理null:

<asp:label id="DateAddedLabel" runat="server" text=
    '<%# (String.IsNullOrEmpty(Eval("DateAdded").ToString())) 
    ? "No Date Available" : Eval("DateAdded", "{0:d}") %>'>
</asp:label>

答案 3 :(得分:3)

这已经得到了很好的解答,但我过去常常使用Label以外的其他内容,并认为我会提供一种方法。

您可以一起忽略Label并单独放置 Eval(...)方法。

例如,如果您在TemplateField

中使用此内容
<asp:TemplateField HeaderText="Date To">
    <ItemTemplate>
        <%# Eval("soDateTo", "{0:MM/dd/yyyy}") %>
    </ItemTemplate>
</asp:TemplateField>

您可以使用它来改善您的CSS控制,例如

<div id="client_since">
    <%# Eval("soDateTo", "{0:MM/dd/yyyy}") %>
</div>

答案 4 :(得分:0)

使用DateTime.ToShortDateString方法摆脱日期的时间部分:

http://msdn.microsoft.com/en-us/library/system.datetime.toshortdatestring.aspx

答案 5 :(得分:0)

试试这个:

> <asp:Label ID="Label4" runat="server" Text='<% # Eval("soDateTo", "{0:d}") %>'
> Font-Bold="False" Font-Size="Small"></asp:Label>

答案 6 :(得分:0)

试试这个;

<asp:Label ID="lbldate" runat="server" Text='<%# (Convert.ToDateTime(Eval("soDateTo"))).ToShortDateString()  %>'></asp:Label>