我的问题是关于asp.net-MVC:
我的问题是:当我点击索引视图中的提交按钮时,我的部分视图中的地址字段为空...这是我的代码:
我有一个人类:
public class Person
{
public Person()
{
Address = new Address();
}
public int Id { get; set; }
public string Name { get; set; }
public string Family { get; set; }
public Address Address { get; set; }
}
和地址类:
public class Address
{
public string City { get; set; }
public string Street { get; set; }
}
我创建了一个这样的索引视图。在我看来,有一个部分观点:
@using (Html.BeginForm("Index", "Home"))
{
<label>Name: </label>
@Html.EditorFor(m => m.Name)
<label>Family</label>
@Html.EditorFor(m => m.Family)
@Html.Partial("GetAddress", Model.Address)
<input type="submit" value="Submit" title="Submit" />
}
我的部分观点是:
<label>City :</label>
@Html.EditorFor(m => m.City)
<br />
<label>Street: </label>
@Html.EditorFor(m => m.Street)
答案 0 :(得分:1)
尝试在调用部分内容时添加HtmlFieldPrefix。
@Html.Partial("GetAddress", Model.Address, new ViewDataDictionary { TemplateInfo = new TemplateInfo { HtmlFieldPrefix = "Address" } })
这样您就可以正确命名文件,模型绑定器会正确绑定它们。