1
我试图将新的HTML5输入属性值填充到Razor局部视图中。我的模型是这样的:从模型中动态添加HTML5输入属性
public class Answer
{
public int AnswerId { get; set; }
public string AnswerText { get; set; }
public int? Columns { get; set; }
public int? Maximum { get; set; }
public string Placeholder { get; set; }
}
我的部分观点如下:
@model Answer
@{Layout = null;}
@Html.TextBoxFor(x => x.AnswerText, new { @class="textbox", cols="@Model.Columns", max="@Model.Maximum", placeholder="@Model.Placeholder" })
也许这不足为奇生成HTML,看起来像这样(我省略了一些无关痛痒的属性):
<input type="text" class="textbox" cols="@Model.Columns", max="@Model.Maximum", placeholder="@Model.Placeholder">
尽管我看到的是html,但看起来像这样,但无论模型中有什么值:
<input type="text" class="textbox" cols="50", max="30", placeholder="Answer here">
我敢肯定这是我有一个荷马辛普森时刻,但我不能得到它的工作。
谢谢回答@Garrett,但不幸的是,只是生成以下HTML:' – Nick
好吧,这是导致问题的可空属性。查看更新后的答案。您需要使用GetValueOrDefault。 –
完美的作品 - 谢谢@Garrett – Nick