我需要从首次在 MVC 3 应用程序中注册的新用户(首先使用 EF 代码)捕获三种不同类型的信息。理想情况下在一页上(将有三个选项卡)
- 用户信息
- 扩展用户信息
- 用户选择的福利
帐户 Controller 的注册方法应在触发时填充用户表。我需要一些关于如何最好地捕获其他数据的建议。我是否要为附加数据创建 UserDetails 模型?如果是这样,是否可以从同一页面更新? (这将是“帐户/注册”页面。我是否需要在帐户 Controller 中执行某些操作,或者模型之间的关系就足够了吗?
有什么好的例子可以解释这一点吗?我尝试了 MVC Contoso University,但不知道是否可以做到这一点。
非常欢迎任何建议:)
谢谢
最佳答案
您可以创建一个 View 模型,将其他模型中所需的所有字段组合起来,然后将 View 强类型化到该模型中。用户将信息提交回 Controller 后,您将适本地处理每个属性。
public class RegisterViewModel()
{
//Userinfo
public string UserName {get; set;}
...
//Extended user info
public string FirstName {get; set;}
public string LastName{get; set;}
...
//Benefits
public string BenefitName {get; set;}
...
}
然后
[HttpPost]
public ActionResult Register (RegisterViewModel viewModel)
{
//grab the user info from the view model and process it
viewModel.UserName...
//grab the extended info and process it
viewModel.FirstName...
//grab the benefit info and process it
viewModel.BenefitName...
}
关于asp.net-mvc - 在 ASP.NET MVC 中更新多个模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12749958/