我有以下模型类(我首先使用 EF 代码来生成表)。
public class MyClass
{
....
[Required, ForeignKey("Address")]
public int Address1Id { get; set; }
virtual public Address Address1 { get; set; }
[Required, ForeignKey("Address")]
public int Address12d { get; set; }
virtual public Address Address2 { get; set; }
[Required, ForeignKey("Address")]
public int Address3Id { get; set; }
virtual public Address Address3 { get; set; }
....
}
public class Address { .... }
我希望创建视图MyClass
显示所有地址字段,并且在保存MyClass
. 但是脚手架为地址生成了一个 DropDownList 框。如何修改代码,使其像这些地址字段MyClass
直接编码在类中一样,让控制器将地址保存在表Address
和AddressID
表中MyClass
?
<div class="editor-label">
@Html.LabelFor(model => model.Address1Id, "Address")
</div>
<div class="editor-field">
@Html.DropDownList("Address1Id", String.Empty)
@Html.ValidationMessageFor(model => model.Address1Id)
</div>
更新: 我尝试创建以下 ViewModel,但脚手架抱怨类中没有定义键。
public class DealViewModel
{
public Deal Deal { get; set; }
public Address Address { get; set; }
}