Asp.net mvc 3 MVC3 HTMLHelper默认值

Asp.net mvc 3 MVC3 HTMLHelper默认值,asp.net-mvc-3,html-helper,Asp.net Mvc 3,Html Helper,我有一个html助手,我想设置一个默认值 @Html.EditorFor(model => model.DateFrom) 如果model.DateFrom为空,那么设置帮助程序默认值的语法是什么?我认为使用EditorFor无法设置默认值。考虑将它设置在模型的访问器上? 要在其他类型(TextBoxFor等)上执行此操作,可以设置一个值,但不能设置默认值。因此,您需要: @if(Model.something == null) { @Html.TextBoxFor(m =>

我有一个html助手,我想设置一个默认值

@Html.EditorFor(model => model.DateFrom)

如果model.DateFrom为空,那么设置帮助程序默认值的语法是什么?

我认为使用EditorFor无法设置默认值。考虑将它设置在模型的访问器上?

要在其他类型(TextBoxFor等)上执行此操作,可以设置一个值,但不能设置默认值。因此,您需要:

@if(Model.something == null)
{
   @Html.TextBoxFor(m => m.ID, new { @Value = "Value!"})
} else {
   @Html.TextBoxFor(m => m.ID)
}
正如我想指出的那样:

private DateTime? _date;
public DateTime? date {
get {
   if(_date == null)
      _date = DateTime.Now;
   return _date;
}
set {
   _date = value;
}
}

使用诸如jquery日期选择器之类的工具,如果问题是您只是在未选择日期选择器的情况下不发回任何内容,则可以使用默认值。

我相信唯一支持默认值的HTML帮助程序是HTML.DropDownList()。它有一个optionLabel参数,允许您在下拉列表的顶部设置默认选项。例如:

Html.DropDownList("CustomerId", "Select a Customer")

正如Henry所提到的,如果您想在其他HTML帮助程序上设置默认值,请在模型中设置它或滚动您自己的帮助程序。

@Henry…谢谢。我在模范班做作业。工作得很好…看到了吗