我有 和 的 DisplayTemplates String,DateTime?如下所示:
@model String
@Html.TextBoxFor(m => Model, new { @class="read-only"})
@model DateTime?
@{
String modelValue = "";
if (Model.HasValue)
{
if (Model.Value != DateTime.MinValue)
{
modelValue = Model.Value.ToShortDateString();
}
}
}
@Html.TextBox("", modelValue, new { @class = "date-picker date-text read-only", @readonly="readonly" })
我这样做是因为当我使用帮助器时,DisplayFor我更喜欢背景较暗的文本框,并且我喜欢在date-picker类上进行标记,以便稍后将这些字段转换为适当的日期选择器。
该类read-only只定义背景颜色。在这个模型的摘录中,
[Editable(false)]
[Display(Name = "File Name")]
public string FileName { get; set; }
[Editable(false)]
[Display(Name = "File Report Date")]
public DateTime? FileReportDate { get; set; }
两个属性几乎相同,但显示模板String拒绝添加read-only类,其中的模板DateTime做得恰到好处。
为什么会有这样的差异,为什么我的显示模板不会在其内部input元素中添加一个类?
添加:似乎根本没有使用 String 的模板。为什么会这样?