我的模型具有這樣的特性:Html.EditorFor(DATETIME)防止使它成爲一個可選字段
[Display(Name = "Date of Service")]
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)] // ISO compliance for jQuery validation
[SqlDateRange] // Enforces min/max SQL DateTime values (also handles nulls caused by invalid dates like "12/01/19900" -- I suppose the issue could be resolved by finding a better way of handling that null case
public DateTime? DateOfService { get; set; }
但是,當我在我看來用這個,
@Html.EditorFor(model => model.Date)
我得到this,它被傳遞爲null。我已經通過屬性檢查null
,因爲編輯器還允許非常無效的日期,如12/12/21390 - 其中也通過null
。
編輯:我正在使用Chrome。
您是否試過'model => model.Date.Value'?或者創建你自己的'DateTime?'編輯器模板https://stackoverflow.com/questions/8580780/editorfor-on-nullable-datetime-nullable-object-must-have-a-value – Jasen
你看到的是一個佔位符,假設你的使用Chrome或Edge及其瀏覽器的HTML-5 datepicker實現。什麼數據註釋適用於您的財產和您使用的瀏覽器 –
@Jasen不要以爲這個問題實際上是相關的。 – Sinjai