Kendo выпадающий список разбора переменных - PullRequest
0 голосов
/ 09 мая 2018

Я получил сущность Order, где я могу выбрать оператора при добавлении комментария

Мои переменные в OperatorViewModel:

    public int Id { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }

OrderController:

        var operatorComment = operatorRepository.Get();
        var operatorCommentList = operatorComment.Select(opList => new OperatorViewModel
        {
            Id = opList.Id,
            FirstName = opList.FirstName
        })
        .ToList();

        ViewBag.AvailableOperatorComment = operatorCommentList;

Колонка кендо:

            columns.Bound(c => c.OperatorFirstName)
            .Title(T("Sales.Order.Operator"))
            .ClientTemplate($@"#= OperatorFirstName # #= OperatorLastName #")
            .EditorTemplateName("OperatorCommentList")
            .EditorViewData(new { AvailableOperator = ViewBag.AvailableOperatorComment });

Шаблон OperatorCommentList:

@model OperatorViewModel

@{
var orderOperatorCommentList = ViewData["AvailableOperator"] as 
List<OperatorViewModel>;
}

@(Html.Kendo().DropDownListFor(m => m)
    .DataValueField(nameof(OperatorViewModel.Id))
    .DataTextField(nameof(OperatorViewModel.FirstName))
    .BindTo(orderOperatorCommentList)
)

А в списке OrderOperatorCommentViewModel:

public List<SelectListItem> AvailableOperatorComment { get; set; }

Теперь, как я могу изменить dataTextField для анализа FirstName и LastName? Я хочу в списке имя и фамилию, но не знаю, как это сделать

1 Ответ

0 голосов
/ 10 мая 2018

Если вы хотите добиться этого в клиенте, вероятно, лучше всего использовать шаблон.Что-то вроде этого должно сделать это:

@(Html.Kendo().DropDownListFor(m => m)
    .DataValueField(nameof(OperatorViewModel.Id))
    .DataTextField(nameof(OperatorViewModel.FirstName))
    .Template("#:data.FirstName# #:data.LastName#")
    .BindTo(orderOperatorCommentList)
)

См. пример для более подробной информации.

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