zoukankan      html  css  js  c++  java
  • ASP.Net MVC 控制@Html.DisplayFor日期显示格式

    在做一個舊表的查詢頁時,遇到一個問題:

    字段在db里存儲的是DATETIME,但保存的值只有日期,沒有時間數據,比如2018/2/26 0:00:00,顯示出來比較難看,

    當然也可以做一個ViewModel,在字段上添加Attribute定義來更改名稱和顯示名稱,如下:

    [Display(Name = "建立日期:")]  
    [DisplayFormat(DataFormatString = "{0:yyyy年MM月dd日}")]  
    public virtual System.DateTime CreateTime{ get; set;}  

    這樣顯示出來的是:2018年2月26日。

    但這樣對于一個舊表來說,太過麻煩,倒不如HtmlHelper的Template來得簡便。

    網上找了一些方法卻都是錯誤的,經過修改實驗成功,以下步驟是正確的:

    1. 在 Views/Shared 文件夾建立 DisplayTemplates;(約定的名稱)
    2. 創建 MyDate.cshtml 視圖;(文件名即為約定的TemplateName)
    3. 視圖中的代碼如下:
    @model System.DateTime
    @Model.ToString("yyyy/MM/dd")

    OK了,在需要轉換的地方添加 TemplateName 就可以了:

    <td>
        @Html.DisplayFor(modelItem => item.Date,"MyDate")
    </td>

    顯示結果: 2018/02/26

    同樣約定的還有 EditorTemplates.

  • 相关阅读:
    linux:shell:tree
    html5,css3
    asp.net web forms page life cycle
    Unobtrusive Javascript
    Multitier architecture
    C#接口的显示实现和隐式实现
    Modernizr
    android w700
    debian e42 wifi
    mstest run dll
  • 原文地址:https://www.cnblogs.com/keepee/p/8479052.html
Copyright © 2011-2022 走看看