I have a Person class with a BornDate property in my model defined as
[DisplayName("Born Date")]
public DateTime? BornDate { get; set; }
I use this field in my view as
<td style="white-space:nowrap">
<%= Html.LabelFor(model => model.BornDate)%>
<br />
<%= Html.TextBoxFor(model => model.BornDate, new { id = "bornDate" })%>
<%= Html.ValidationMessageFor(model => model.BornDate, "*")%>
</td>
The problem is that when I am editing a Person instance with the BornDate text box is formatted as
dd/MM/yyyy hh.mm.ss
while I would like to format it without the time part ("dd/MM/yyyy"). I am not able to use the toString method with the format string because it is a nullable field.
what can I do?
You should be able to use Value. Just check it isn't null first.
var displayDate = model.BornDate.HasValue ? model.BornDate.Value.ToString("yyyy") : "NoDate";