0

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

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

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

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

public ViewResult Details(string id)
        {

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

然后将视图模型发送回视图,但是如何将其他相关数据放入视图模型?

4

1 回答 1

0

您需要做的是查询您的数据库并将相关信息拉入您的视图模型,然后再将其传递回您的视图,即

public ViewResult Details(string id)
{
    var entity = // pull record from DB by id
    return View(new RegisterViewModel()
    {
        UserName = id,
        AnotherProperty = entity.AnotherProperty
        ...
    });
}

如果您在很多地方将视图模型映射到模型,您可能需要考虑使用AutoMapper,它将简化您的代码。

于 2012-10-09T14:26:36.297 回答