2012-12-12 46 views
1

当我尝试将日期转换为字符串时,出现此错误。那么我该如何解决这个错误?MVC3将日期转换为字符串错误

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

这是我的观点:

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

然后,我已经编辑我的类注释,然后同样的结果,这里是我的类。在我的数据库表我的日期参数,它的名字是我在视图中使用的“内容”,“X => x.date”

public class Common 
    { 

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

public class CommonModel 
     { 
      public content content{ get; set; } 


     } 

} 
+0

您是否尝试过在类中使用数据注释?如:[[DisplayFormat(DataFormatString =“{0:dd/MM/yyyy}”)]' –

回答

1

试试这个:

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" }) 
+0

Yeap我已添加annation我的班,但没有变化我将编辑我的答案与我的班级我想我是想念什么,但是什么? – learnmore

+0

您是否为EditorFor更改了TextBoxFor? –

+0

是的,我已经改变,我得到这个结果21.12.2012 00:00:00所以没有改变 – learnmore