2017-02-16 102 views
8

當我在編輯視圖中使用以下代碼時,它不顯示模型中的日期。日期輸入標籤幫助程序未顯示數據庫中的日期

<input asp-for="OprettetDato" class="form-control"/> 

模型的屬性聲明如下:

[DataType(DataType.Date)] 
[DisplayFormat(DataFormatString = "{0: dd/MM/yyyy}", ApplyFormatInEditMode = true)] 
public DateTime OprettetDato { get; set; } 

和值經過模型

Picture of the model passed

爲什麼不是這方面的工作?

+0

因爲您對下面的解釋不滿意,我想問您的問題是:*爲什麼*或*如何解決此問題*? –

+0

我的問題通過從模型中移除DisplayFormat標記得到解決 - 我做到了這一點,因爲您首先獲得了對標記的注意 - 就這樣,HTML5日期選擇器可以正確顯示我的日期。 – Tirdyr

回答

7

的問題是在模型的屬性,屬性[DataType(DataType.Date)]使得輸入標籤輔助生產type="date" HTML屬性,這在HTML5導致固定,標準格式 - 在這裏看到的信息:Is there any way to change input type="date" format?

爲了適當顯示的字段格式,刪除[DataType(DataType.Date)]屬性,你會沒事的。 Additionaly,纔能有前進的日期格式斜線,你需要逃避他們是這樣的:

[DisplayFormat(DataFormatString = @"{0:dd\/MM\/yyyy}", ApplyFormatInEditMode = true)] 
public DateTime OprettetDato { get; set; } 

如果你想有日期選擇器自定義日期格式,你需要使用一些定製JavaScript解決方案。

+0

我想要HTML5 datepicker,並且我(現在)正在閱讀您提供的鏈接。我試着刪除[DisplayFormat](並保留數據類型)。這實際上使得選取器工作。在我的語言環境時間格式中,這是我想要的 – Tirdyr

+0

你沒有在你的問題中說過。 –

+0

你的權利,但我沒有意識到這是問題..:=) – Tirdyr