Asp.net mvc 3 MVC3将日期转换为字符串错误

Asp.net mvc 3 MVC3将日期转换为字符串错误,asp.net-mvc-3,Asp.net Mvc 3,当我尝试将日期转换为字符串时,我得到了这个错误。那么我如何修复这个错误呢 模板只能用于字段访问、属性访问、一维数组索引或单参数自定义索引器表达式 以下是我的看法: <div class="editor-field"> @Html.TextBoxFor(x => x.date.ToString("MM-dd-yyyy"), new { @class = "date", @required = "required" }) @Html.ValidationMessag

当我尝试将日期转换为字符串时,我得到了这个错误。那么我如何修复这个错误呢

模板只能用于字段访问、属性访问、一维数组索引或单参数自定义索引器表达式

以下是我的看法:

<div class="editor-field">
   @Html.TextBoxFor(x => x.date.ToString("MM-dd-yyyy"), new { @class = "date", @required = "required" })
     @Html.ValidationMessageFor(model => model.date)
   </div>
试试这个:

1) 将数据注释放入类中,如下所示:

[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:MM/dd/yyyy}")]
public DateTime date { get; set; }
2) 替换此行:

@Html.TextBoxFor(x => x.date.ToString("MM-dd-yyyy"), new { @class = "date", @required = "required" })
为此,应:

@Html.EditorFor(x => x.date, new { @class = "date", @required = "required" })
试试这个:

1) 将数据注释放入类中,如下所示:

[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:MM/dd/yyyy}")]
public DateTime date { get; set; }
2) 替换此行:

@Html.TextBoxFor(x => x.date.ToString("MM-dd-yyyy"), new { @class = "date", @required = "required" })
为此,应:

@Html.EditorFor(x => x.date, new { @class = "date", @required = "required" })

你试过在你的课堂上使用数据注释吗?比如:
[DisplayFormat(DataFormatString=“{0:dd/MM/yyyy}”)]
您是否尝试在类中使用数据注释来实现此目的?类似:
[DisplayFormat(DataFormatString=“{0:dd/MM/yyyy}”)]
是的,我已经添加了我的类的名称,但没有更改,我将用我的类编辑我的答案,我想我遗漏了一些东西,但是什么?你是否为EditorFor更改了TextBoxFor?是的,我更改了,我得到了这个结果2012年12月21日00:00:00,所以没有任何更改。我不明白为什么会发生这种情况。我在contents.date中有“contents”表和参数。正如你在我的课堂上所说,我已经添加了注释,正如你在我的问题中所看到的,我刚刚更新了我的答案…使用
ApplyFormatInEditMode
再试一次。是的,我已经添加了我的课堂上的注释,但没有更改。我将用我的课堂编辑我的答案。我想我遗漏了一些东西,但是什么?你是否更改了EditorFor的文本框?是的,我已更改我得到了这个结果,2012年12月21日00:00:00,所以什么都没有改变,我不明白为什么会这样。我在contents.date中有“contents”表和参数。正如你在我的课堂上所说,我已经添加了注释,正如你在我的问题中所看到的,我刚刚更新了我的答案…请使用
ApplyFormatInEditMode