时间字段从数据库接收值,但未显示

时间:2015-03-29 08:08:37

标签: c# asp.net-mvc html5

我正在处理的表单使用DateTime值来表示时间属性(TimeStart)。我有一个带有相应编辑器模板的viewmodel(CourseSectionSessionViewModel)。

viewmodel:

public class CourseSectionSessionViewModel
{
    [Display(Name = "Start Time")]
    [DataType(DataType.Time)]
    [DisplayFormat(DataFormatString = "{0:hh:mm tt}", ApplyFormatInEditMode = true)]
    public DateTime TimeStart { get; set; }
}

编辑器模板:

<tr>
    <td>@Html.EditorFor(model => model.TimeStart, new { htmlAttributes = new { @class = "form-control", @data_val = "false" } })</td>
</tr>

为了简洁起见,上述两个都排除了无关项目。

这将生成以下图像,其中显示了字段,并且检查器指示已填充字段(使用Visual Studio进行调试确认实际数据来自数据库),但视觉效果看起来像默认值。

Time fields

实际值似乎被添加到表单字段中,但该字段显然没有显示该值。有什么建议吗?

1 个答案:

答案 0 :(得分:0)

格式为&#39; HH:mm&#39;,&#39; HH:mm:ss&#39;或者&#39; HH:mm:ss.SSS&#39;其中HH是00-23,mm是00-59,ss是00-59

不要过上午10:30。相反,仅将值传递为10:30