我有一个下拉列表,我希望它是可选的,但是,ModelState.IsValid
检查正在尝试验证该属性。有没有办法告诉它该属性是可选的?
这是我的代码:
<h2>New Version</h2>
@using (Html.BeginForm()) {
<div>Version Number: @Html.TextBoxFor(m => m.Number)</div>
<div>Enabled: @Html.CheckBoxFor(m => m.IsActive)</div>
<div></div>
<div>
Template (optional):
@Html.DropDownListFor(m => m.TemplateVersionId, new SelectList(Model.CurrentVersions, "VersionId", "Number"),
"-- Select Template --")
</div>
<input type="submit" value="Save" />
@Html.ActionLink("Cancel", "Index");
}
和我的 ViewModel:
public class AddVersionViewModel
{
public double Number { get; set; }
public bool IsActive { get; set; }
public int TemplateVersionId { get; set; }
public ICollection<Version> CurrentVersions { get; set; }
}
我希望 TemplateVersionId
是可选的。
最佳答案
将其更改为 int?
以使其可为空。
关于c# - MVC3 可选模型属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7516692/