MVC2编辑器模板不使用日期时间格式

时间:2010-10-06 12:49:50

标签: templates asp.net-mvc-2 date

继之前的问题之后,我在使用日期时间字段的编辑器模板时遇到问题,下面是编辑器模板的代码(称为“EditDateTime”)。

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<System.DateTime?>" %>

<%= Html.TextBox("", (Model.HasValue ? Model.Value.Date.ToString("dd/MMM/yyyy") : 
DateTime.Today.ToString("dd/MMM/yyyy")), new { @class = "date" })%>

以下是使用编辑器模板

的调用
<%=Html.EditorFor(Model => Model.StartDate, "EditDateTime") %>

除格式化被忽略外,一切正常。 Asp.Net MVC2框架书籍文档模板并具体说明

  

我们正在为该名称传递一个空字符串   参数,因为框架将自动为此前缀添加与正在呈现的模型项对应的字段名称;

所以我不需要id,为什么格式被忽略?但是 - 如果我包含ID,则遵循格式,但模型绑定会被破坏。

帮助?


只是澄清.. 如果我给HMTL.Textbox一个ID我得到以下...日期格式是正确的但我失去了模型绑定,因为ID从“StartDate”更改为“StartDate_xx”

<input class="date" id="StartDate_xx" name="StartDate.xx" type="text" value="02/May/2012" />

没有Id,它看起来像这样......模型绑定是正确的,但格式不是。

<input class="date" id="StartDate" name="StartDate" type="text" value="05/02/2012 00:00:00" />

1 个答案:

答案 0 :(得分:0)

尝试使用

 Model.Value.ToString("dd/MM/yyyy")

适合我。

一切看起来都很好......是您发送DatetimeDatetime?

的项目