0

我正在尝试使用Editor Templates填充一个下拉列表以在我的 Kendo Grid 中使用。

我的 StatesEditor.cshtml 包含:

@(Html.Kendo().DropDownList()
.Name("State") 
.DataValueField("StateID") 
.DataTextField("ShortName") 
.BindTo((System.Collections.IEnumerable)ViewData["states"]))

在我的控制器中,我有:

public ActionResult Index()
    {
        var db = new ACoreEntities();
        db.Configuration.ProxyCreationEnabled = false;
        var states = db.StateLookups;

        var stateList = states.Select(state => state.ShortName);

        ViewData["states"] = stateList;


        return View("~/Views/System/PMarkup/Index.cshtml");
    }

在我的实际网格中,当我单击该行的“编辑”按钮时,我得到一个包含 51 个“未定义”条目的下拉列表。

4

1 回答 1

1

我最终创建了一个 State 模型,然后在我的 ActionResult 中我将代码更改为:

ViewData["states"] = new ACoreEntities()
            .StateLookups
            .Select(s => new State
            {
                Id = s.StateID,
                ShortName = s.ShortName
            })
            .OrderBy(s => s.ShortName);
于 2013-03-25T17:28:44.850 回答