我正在做一个基本的客户保存,但无法弄清楚如何另外将地址保存到我的地址表。
目前在我的Create.cshtml视图中,我拥有所有主要客户字段,例如姓名,电话,传真,电子邮件。然后另外添加到我的表单中的是一个名为Address.cshtml的EditorTemplate,其中包含所有地址字段。
我的总体目标是使用EditorTemplate字段中的信息在Address表中创建一个新的Address记录,然后在Customer表中使用主要客户字段值和新创建的Address中的AddressId创建一个新的Customer记录。 / p>
我不确定会进入“[Bind(包含部分)。它是AddressId,还是Address.Address1,Address.Address2,Address.City等。
这是我的POST Action Method目前的样子:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "Name,Phone,Fax,Email,Address")] Customer customer)
{
if (ModelState.IsValid)
{
int addressId = _adminService.SaveAddress(customer.Address);
customer.AddressId = addressId;
_custService.SaveCustomer(customer);
}
return View(Edit);
}
答案 0 :(得分:1)
另外,添加到Stephen所说的内容......你应该创建一个视图模型(如果你还没有),它封装了两个视图的属性。我还建议使用在视图模型中创建Address和Customer对象的方法。