1

我想知道是否有人可以解释两个 ASP.Net MVC 3 项目之间的以下功能差异。

在这两个项目中,我都有一个包含以下内容的视图模型:

public List<int> Questions;

在这两个项目中,我都有以下 ListBoxFor 代码:

@Html.ListBoxFor(x => x.Questions, new MultiSelectList(ViewBag.Questions as List<MyStandardLib.Mvc.Attribute>, "Id", "Name", @Model.Questions), new { @class = "ui-field-multiselect", style = "width: 250px;" })

功能上的区别在于,在运行时,一个项目正确绑定了现有的选定问题,而另一个项目则没有,并且将所有问题显示为未选择。单步执行代码,List 被填充到视图中并正确传递给 MultiSelectList 构造函数,但它没有将值设置为选中状态。

这真是令人沮丧。

4

1 回答 1

1

ViewBag.Questions将您的变量名称更改为ViewBag.AvailableQuestions. 有时渲染器会对您所指的内容感到困惑。

于 2012-06-08T17:47:02.610 回答