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


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

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

如果只想顯示成年月日形式,不要時分秒,那么該怎么辦呢?

第一種方法:先設置一個時間顯示的模板,然后在需要顯示時間的地方調用這個模板就行了。

1、在Share文件夾下,創建一個文件夾DisplayTemplates

2、在DisplayTemplates文件夾下,創建一個視圖LongDateTime.cshtml

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

@model System.DateTime

@Model.ToLongDateString()

當然,后面那句也可以換成@Model.ToShortDateString()或其它日期格式。

4、在需要顯示日期的地方,由原來的

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

替換成

@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日這種格式。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM