[英]partial views in ASP.NET MVC?
我有三个相关的数据库表,例如:company(one-one)Contact(one-one)Address,
我需要创建一个公司,然后为该公司创建联系人,然后在一个页面中创建联系人地址(以使用户更轻松)。
用户确实必须立即填写所有详细信息并提交,他今天可以创建公司,然后明天添加联系人,然后明天再编辑公司详细信息等。这些操作是用户随机选择的...
有很多方法,但是使用ASP.NET MVC实现此目标的最佳方法是什么?
谢谢
恕我直言,最好的方法是为每个表都有一个PartialView,并且让View具有一个将每个表对象都作为属性的表单视图模型
FormViewModel
Company company {get;set;}
Contact contact {get;set;}
address address {get;set;}
您可以将上面的模型返回到控制器的return View(FormViewModel);
然后,当渲染每个部分时,您将传递适当的模型。
Html.RenderPartial("ContactEntry", Model.contact);
提交表单时,您可以执行TryUpdateModel来获取值并开始保存到数据层。
编辑回应罗伯特
Sam,您还需要确保在填写数据时启用/禁用这两个字段。例如,您不能先没有公司的联系人。
如果激发得足够多,您可以检查数据是否已填写。因此,当用户完成表单时,您将激活字段而无需先保存。 您可以使用jQuery甚至可以使用MVC编写的客户端验证器来执行此操作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.