Kendo ListBox DataSource不会在我的ListBox中呈现

时间:2018-06-01 17:21:18

标签: asp.net-mvc razor kendo-ui

我从Home控制器和GetRoles方法获取我的角色。我可以在开发人员工具中看到json,但它不会在列表框中绑定或呈现。但他们显然不受用户界面的束缚。其他列表框显示用户从模型中拥有的角色。

我希望我能解决问题但请随时告诉我。

Roles Data from GetRoles

        public async Task<ActionResult> GetRoles([DataSourceRequest] DataSourceRequest request)
    {
        var query = new Commands.Roles.Index.Query();
        var result = await _mediator.Send(query);

        return Json(result.ToDataSourceResult(request), JsonRequestBehavior.AllowGet);
    }

            @(Html.Kendo().ListBox()
                              .Name("allRoles")
                              .DataTextField("RoleName")
                              .DataValueField("Id")
                              .Toolbar(toolbar =>
                              {
                                  toolbar.Position(ListBoxToolbarPosition.Right);
                                  toolbar.Tools(tools => tools
                                      .MoveUp()
                                      .MoveDown()
                                      .TransferTo()
                                      .TransferFrom()
                                      .TransferAllTo()
                                      .TransferAllFrom()
                                      .Remove()
                                      );
                              })
                              .HtmlAttributes(new { title = "Roles", style = "height:400px; width:100%;" })
                              .ConnectWith("selected")
                              .DataSource(source => source.Read(r => r.Action("GetRoles", "Home")))
                              .Selectable(ListBoxSelectable.Multiple)
        )
            @(Html.Kendo().ListBox()
                              .Name("selected")
                              .DataTextField("RoleName")
                              .DataValueField("RoleId")
                              .ConnectWith("allRoles")
                              .HtmlAttributes(new { title = "Roles Added", style = "height:400px; width:100%;" })
                              .Selectable(ListBoxSelectable.Multiple)
                              .BindTo(Model.Roles)

        )

0 个答案:

没有答案