2013-03-27 38 views
0

我正在開發MVC 3應用程序。 在視圖中,我正在顯示名稱以及創建的日期時間。 它顯示爲應設置什麼日期格式以小寫形式顯示am/pm?

尼克·莫里斯27月13上午11時49 < -

,但我想在

尼克·莫里斯27-MAR-13顯示11:49 am < -

我已經在日期時間屬性的部分類中編寫了下面的代碼行。

[DisplayFormat(DataFormatString = "{0:dd MMM yy hh:mm tt} ")] 
    public System.DateTime CreateDateTime { get; set; } 

和我使用下面的代碼查看...

@Html.DisplayFor(ModelItem => item.CommentDateTime.ToString("dddd, MMMM d, yyyy a\\t h:mmtt")) 

什麼樣的變化我必須在日期格式製作? 它顯示錯誤。

+1

可能的重複[只使用日期時間格式以小寫形式獲取AM/PM日期時間](http://stackoverflow.com/questions/499393/get-am-pm-for-a-date-time-小寫字母只使用一個日期時間格式) – 2013-03-27 06:53:17

+2

以上解決方案根本不起作用...給出錯誤... – Nil 2013-03-27 07:04:54

+0

看來您在這裏有兩個問題。爲什麼你有兩種不同的格式,一種在視圖模型中,另一種在視圖中?你想要哪一個? – ivowiblo 2014-02-11 20:22:36

回答

4

你可以在視圖中進行格式化,而無需使用DisplayFor幫手:

@item.CommentDateTime.ToString("dd-MMM-yy hh:mm") @item.CommentDateTime.ToString("tt").ToLower() 

在這種情況下,你不再需要在你的視圖模型的DisplayFormat屬性。

+0

這實際上是一個很好的解決方案。用這個替換@ Html.DisplayFor'部分 – ivowiblo 2014-02-11 20:23:21