2016-01-13 54 views
0

使用ASP.NET 5 Web應用程序模板我試圖以短日期格式呈現日期。我的視圖模型看起來像這樣ViewModel DisplayFormat數據註解未在視圖中呈現

[Display(Name = "Subscription Expires")] 
    [DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:d}")] 
    public DateTime? SubscriptionExpires { get; set; } 

我的看法是這樣的

<dt><label asp-for="SubscriptionExpires"></label>:</dt> 
<dd> 
    @Model.SubscriptionExpires 
</dd> 

然而@Model.SubscriptionExpires呈現在長日期格式。如何獲得以短日期格式顯示日期的視圖?

回答

1

您直接輸出日期到頁面,沒有機會考慮您的數據註釋。

HTML助手看着那些註解,所以你可以簡單地這樣做:

@Html.DisplayFor(model => model.SubscriptionExpires)

或者簡單地格式化像這樣的日期:

@Model.SubscriptionExpires.ToShortDateString()

+0

謝謝@Mister史詩。 'ToShortDateString()'不能用於可爲空的類型,但'@ Html.DisplayFor(model => model.SubscriptionExpires)'做了訣竅。 – Vague