私のモデルには、日付プロパティを持つオブジェクトがあります...
[Required(ErrorMessage="{0} is required")]
[Display(Name="Donation date")]
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MM/yyyy}")]
public DateTime DonationDate { get; set; }
ビューにはそのためのエディターがあります....
<div class="editor-label">
@Html.LabelFor(model => model.Donation.DonationDate)
</div>
<div class="editor-field">
@Html.TextBox("txtDate", Model.Donation.DonationDate.ToString("dd/MM/yyyy"), new { @class = "date" })
@Html.ValidationMessageFor(model => model.Donation.DonationDate)
</div>
コントローラーはモデルを受け取るだけです...しかし、コントローラーでこれを実行して別のビューに渡すと...
ViewBag.Date = model.Donation.DonationDate;
日付が何に設定されていても、0001/1/1 12:00:00 AM に戻るたびに。何かご意見は?ありがとう!
言い忘れました...エディターフィールドでJQuery datepickerも使用しています:
$('.date').attr("placeholder", "dd/mm/yy").datepicker({
dateFormat: "dd/mm/yy",
changeMonth: true,
changeYear: true
});