Как вы привязываете асинхронно к элементу управления Kendo UI? - PullRequest
0 голосов
/ 28 июня 2018

У меня есть выпадающий список, в котором есть 2000 элементов. Я пытался связать это так:

@(Html.Kendo().MultiSelect().Name("kendo-dropdown-manager")
                .DataValueField("Value")
                .DataTextField("Text")
                .Placeholder("Select Entity")
                .BindTo(Model.ManagersList)

На моей странице Razor я использую асинхронно 'Get':

public class IndexModel : PageModel
{
    public IndexModel()
    {
        this.ManagersList = new List<SelectListItem>();
    }

    public List<SelectListItem> ManagersList { get; private set; }

    public Task OnGetAsync()
    {
        ViewsController viewsController = new ViewsController();
        List<ManagerViewModel> managers = await viewsController.GetManagersAsync();
        this.ManagersList.AddRange(
            from m in managers
            select new SelectListItem
            {
                Value = m.Id.ToString(),
                Text = m.Name
            });
    }
}

Когда появляется страница, раскрывающийся список пуст. Если я изменю 'OnGetAsync' на полностью синхронную версию, выпадающий список будет заполнен правильно. На моей странице есть несколько похожих элементов управления, и я не хочу загружать их синхронно. Как правильно запустить операцию, чтобы элементы управления Kendo перехватывали результаты, когда они возвращались?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...