我有一个名为“Publication”的模型,其中有另一个名为“Publisher”的模型:
public class Publication
{
public int PublicationID { get; set; }
public Publisher Publisher { get; set; }
}
public class Publisher
{
public int PublisherID { get; set; }
[Required]
public string Name { get; set; }
}
因此,当我从数据库中获取出版物的数据时,我还会填写每个出版物的发布者信息,以便在需要时使用它。
当我添加另一个出版物时,我必须选择一个发布者,这是一个必填字段,并且我在包含所有发布者的页面中有一个 DropDownList,因此用户可以选择该发布的哪个发布者:
<div>
@HtmlDropDownListFor(model => model.Publisher.PublisherID, myPublisherList)
</div>
它可以很好地填充数据,但是我在一行中遇到了一个错误:
if(ModelState.IsValid)
因为没有指定发布者的名称,即使我只需要 ID。我不想删除 Model.IsValid 行,因为还有很多其他字段需要验证,我想让它尽可能干净,那么有没有一种简单的方法来填充它的 name 值?
我想在每次用户更改 Select 时添加一个隐藏字段并使用 Javascript 填充该值,但如果可能的话,我想使用一种更简洁且无 javascript 的方法。
谢谢!