2010-05-09 110 views
4

我得到datetime爲1/2/2010 11:29:30我在gridview中顯示。 ,我想將它轉換爲「2010年2月1日11:29」。日期時間轉換

請讓我知道如何將它轉換成這樣。

在此先感謝。

注意:我在C#中使用asp.net。

+0

我試圖與 文本=做 '<%#的eval( 「DatePosted」, 「{0:M-DD-YYYY在HH:MM}」)%>'> 但我想它像二月1,2010 at 11:29 AM – Zerotoinfinity 2010-05-09 14:01:12

+0

您是使用模板還是僅顯示列? – Sparky 2010-05-09 14:20:09

回答

2

使用DateTimeToString方法,它是非常有用的在格式化你的日期。以下是一個快速示例:

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false"> 
    <Columns> 
     <asp:TemplateField> 
      <HeaderTemplate> 
       Date 
      </HeaderTemplate> 
      <ItemTemplate> 
       <%# ((DateTime)Eval("DatePosted")).ToString("MMM d, yyyy 'at' h:mm tt")%> 
      </ItemTemplate> 
     </asp:TemplateField> 
    </Columns> 
</asp:GridView> 

有關其他格式選項的參考,請參見here

+0

爲什麼要重新發布已經說過的東西? – 2010-05-09 14:35:45

+0

當我發佈我的答案時,SO沒有顯示任何其他人。當你問一個問題時,你會不會很高興有一堆不同的答案? – wsanville 2010-05-09 15:40:04

+0

是的,但在我看來,你的答案沒有增加任何價值,因爲你說的與其他答案相同,但只有10分鐘後:)好吧,沒問題! :) – 2010-05-10 09:49:31

1

這種格式應該這樣做:

"MMM d, yyyy a\\t hh:mm" 

只需調用DateTime實例的ToString並傳遞字符串作爲格式

0
<asp headertext="CreationDate" :TemplateField> 
    <itemtemplate> 
    <asp id="Label1" runat="server" 
Label.Text='<%# Bind("DatePosted", "{0:M-dd-yyyy at HH:MM}") %>'>; 
    </asp> 
    </itemtemplate> 
    </asp>