Simon Fox
Simon Fox

Reputation: 10591

Asp.Net MVC 2 Html.TextBoxFor Best way to specify a format string for a DateTime property of model

As the question title explains, what is the best way to specify a format which my Views use when displaying values of a DateTime property via the Html.TextboxFor method.

The default display includes the Date and Time where I really only want the Date displayed.

Thanks

Upvotes: 19

Views: 11725

Answers (1)

Nathan Taylor
Nathan Taylor

Reputation: 24606

In your model definition add the DisplayFormatAttribute to the DateTime property:

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

Then in your View call:

<%=Html.EditorFor(m => m.Date)%>

If all goes well you should get a TextBox with the value filled in in the format specified in the attribute definition.

Upvotes: 24

Related Questions