web-dev-qa-db-fra.com

#Eval Short Date

J'essaie d'ajouter la date From et la date To à mes produits. Ces valeurs sont stockées dans ma base de données sous forme de date. Ceux-ci sont stockés dans ce format 2013-01-15. Le format n'est pas un problème, mais lorsque je les affiche sur mon application, l'heure apparaît (1/15/2013 12:00:00 AM). Comment puis-je supprimer l'heure, s'il vous plaît? Ci-dessous vous pouvez trouver la méthode Im en fonction des données.

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

Essayez le formatage de chaîne dans l'instruction Eval: See ASP Forums

Il y a plusieurs façons de formater la date.

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

Essaye ça; 

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

Très similaire à la solution de Daniel, mais elle gère null: 

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

Cela a très bien été répondu, mais j’utilisais beaucoup plus de Labels qu’il n’était nécessaire et je pensais offrir un moyen de le faire sans.

Vous pouvez ignorer le Label tous ensemble et mettre la méthode Eval (...) par elle-même.

Par exemple, si vous utilisez ceci à l’intérieur d’un TemplateField

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

Vous pouvez l’utiliser pour améliorer un peu votre contrôle CSS, tel que

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

Utilisez la méthode DateTime.ToShortDateString pour vous débarrasser de la partie heure de la date:

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

0
IrishChieftain

Essaye ça:

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

Essaye ça;

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