我正在尝试弄清楚如何使用ViewModel查看视图中的详细信息。
我有一个视图模型设置但似乎无法在我的视图中使用它。
在我的控制器中,我有一个Details方法,我想用它来显示ViewModel中的所有细节。
到目前为止,我将用户名作为字符串传递,然后创建ViewModel的新实例,然后我尝试使用数据填充ViewModel,但我不确定如何执行此操作。我根据进入的ID分配用户名 -
public ViewResult Details(string id)
{
var viewModel = new RegisterViewModel();
viewModel.UserName = id;
return View(viewModel);
}
然后将viewModel发送回视图,但如何将其他相关数据导入viewModel?
答案 0 :(得分:0)
您需要做的是查询您的数据库并将相关信息提取到您的视图模型中,然后再将其传回您的视图,即
public ViewResult Details(string id)
{
var entity = // pull record from DB by id
return View(new RegisterViewModel()
{
UserName = id,
AnotherProperty = entity.AnotherProperty
...
});
}
如果您的地图视图会在很多地方建模,您可能需要考虑使用AutoMapper,这会简化您的代码。