使用EF生成的类,这是我的元数据类:
[DisplayName("Approved Date")]
[DataType(DataType.DateTime)]
[DisplayFormat(ApplyFormatInEditMode = true,
HtmlEncode = false,
NullDisplayText = "",
DataFormatString = "{0:MM/dd/yyyy}")]
public object ApprovedDate{ get; set; }
观点:
<%: Html.EditorFor(model => model.Standard)%>
编辑:
<%:Html.EditorFor(model => model.ApprovedDate)%>
DateTime.ascx:
<%string name = ViewData.TemplateInfo.HtmlFieldPrefix;%>
<%string id = name.Replace(".", "_");%>
<div class="clear">
<div class="editor-label"><%:Html.LabelFor(model => model)%></div>
<div class="editor-field">
<%:Html.TextBoxFor(model => model)%>
<%= Html.ValidationMessageFor(model => model)%>
</div>
</div>
<script type="text/javascript">
$(document).ready(function () {
$("#<%=id%>").datepicker({
showOn: 'both',
dateFormat: 'm/d/yy',
changeMonth: true,
changeYear: true
});
});
</script>
似乎没什么用。我必须保持绑定,所以我不想做原始的HTML。
所有日期字段都以相同的格式输出,其中包括时间。
3/12/2009 12:00:00 AM
它需要的是
2009年3月12日
谢谢!
答案 0 :(得分:3)
我最终使用<%= Html.TextBox(null, string.Format("{0:d}", Model))%>
。似乎工作,并保留绑定。