MVC中的@Html.DisplayFor等方法如何控制日期的顯示格式(轉)

http://www.tuicool.com/articles/BNVBR3css

在Sql Server2005中,若是將某字段定義成日期 時間 類型DateTime,那麼在視圖中會默認顯示成年月日時分秒的方式(如  2013/8/6 13:37:33)html

若是隻想顯示成年月日形式,不要時分秒,那麼該怎麼辦呢?ruby

第一種方法:先設置一個時間顯示的模板,而後在須要顯示時間的地方調用這個模板就好了。ui

一、在Share文件夾下,建立一個文件夾DisplayTemplatesspa

二、在DisplayTemplates文件夾下,建立一個視圖LongDateTime.cshtmlorm

三、在視圖LongDateTime.cshtml中輸入代碼htm

@model System.DateTime

@Model.ToLongDateString()

固然,後面那句也能夠換成@Model.ToShortDateString()或其它日期格式。get

四、在須要顯示日期的地方,由原來的string

@Html.DisplayFor(modelItem => item.PostTime)

替換成it

@Html.DisplayFor(modelItem => item.PostTime,"LongDateTime")

這樣就完成了時間格式的顯示轉換。由原來的顯示方式(2013/8/6 13:37:33)顯示成了(2013年8月6日)

第二種方法:model類上面添加DisplayFormat的attribute.

如:

[Display(Name = "發佈時間:")]
        [DisplayFormat(DataFormatString = "{0:yyyy年MM月dd日}")]
        public virtual System.DateTime PostTime
        {
            get;
            set;
        }

顯示出來後,照樣是2013年8月6日這種格式。

相關文章
相關標籤/搜索