从View模型查看详细信息

时间:2012-10-09 11:49:37

标签: asp.net-mvc ef-code-first

我正在尝试弄清楚如何使用ViewModel查看视图中的详细信息。

我有一个视图模型设置但似乎无法在我的视图中使用它。

在我的控制器中,我有一个Details方法,我想用它来显示ViewModel中的所有细节。

到目前为止,我将用户名作为字符串传递,然后创建ViewModel的新实例,然后我尝试使用数据填充ViewModel,但我不确定如何执行此操作。我根据进入的ID分配用户名 -

public ViewResult Details(string id)
        {

            var viewModel = new RegisterViewModel();
            viewModel.UserName = id;
            return View(viewModel);
        }

然后将viewModel发送回视图,但如何将其他相关数据导入viewModel?

1 个答案:

答案 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,这会简化您的代码。