在我看来,我想要一个用MultiSelectList填充的列表框。我的viewmodel具有MultiSelect的以下属性:
public List<int> SelectedID { get; set; }
public List<string> Names { get; set; }
public List<int> ID { get; set; }
我不希望在我的viewmodel中拥有Object,这就是我使用字符串和整数列表的原因。
在我的控制器中,我创建了viewModel,并用我从数据库中获取的数据填写列表。
myViewModel viewModel = new myViewModel();
viewModel.ID = new List<int>();
viewModel.Names = new List<string>();
foreach(Var o in myData)
{
viewModel.ID.Add(o.Id);
viewModel.Names.Add(o.Name);
}
return View(viewModel);
但在我的视图模型中,我不知道如何将其插入到我的多选中。通常情况下,你把列表中的对象想要通过,但我没有这个,它在我的情况下是独立的。
我知道您可以使用ViewBag或ViewData来传递整个数据列表,但在我工作的地方,我不赞赏使用它。
我想到的另一种方法是在我的viewmodel中创建一个列表,但我不知道这是否被视为在MVC中编码的正确方法。
感谢您的反馈,谢谢。