DropDownListFor未选择初始值

时间:2015-12-02 20:29:23

标签: c# asp.net razor

我不明白为什么在加载表单时没有选择初始值。

这是我的代码

model.LUIsUsed = new List<SelectListItem>()
                        {
                            new SelectListItem { Value = "0", Text = "Ignore" },
                            new SelectListItem { Value = "1", Text = "Required" },
                            new SelectListItem { Value = "2", Text = "Optional" },
                        };

在我看来

@Html.DropDownListFor(x => x.Foo[i].IsUsed, Model.LUIsUsed, new { @class= "form-control input-sm is-used" })

x.Foo[i].IsUsed值为"1",但未选择required。我无法弄清楚原因。

是因为x.Foo是一个数组吗?

编辑:当我不使用数组时,它可以正常工作

1 个答案:

答案 0 :(得分:0)

DropDownListFor循环中的for似乎存在问题。

我必须构建一个SelectList并指定所选的值。

@Html.DropDownListFor(x => x.Criterias[i].IsUsed, new SelectList(Model.LUIsUsed,"Value","Text", Model.Criterias[i].IsUsed))

它有效,但我想知道原因。