Как динамически привязывать имена столбцов к сетке Kendo с включенной разбиением на страницы и сортировкой на стороне сервера?

#javascript #jquery #kendo-ui #asp.net-core-mvc #kendo-grid

Вопрос:

Я включил сортировку и разбиение на страницы на стороне сервера для сетки, которая отлично работает. Я устанавливаю значения columnArray в функции анализа схемы, как показано ниже.

 var model, columnArray ;
$("#grid").kendoGrid({
    dataSource: {
        transport: {
            read: {
                url: "/Home/GetData",
                dataType: "json",
                type: "POST",
                data: function () {
                    return {
                       
                    };
                }
            },
            parameterMap: function (data, type) {

                if (type === "read") {

                    sortField = data.sort[0].field;
                    sortDir = data.sort[0].dir;

                    return {
                       
                    }
                }
            },

        },
        batch: true,
        schema: {
            
                model = generateModel(data.gridUIData);
                columnArray = generateColumns(data.gridColumnHeaders, data.actions);
                generateUploadPopup(data);
                //data.slice = () => JSON.parse(JSON.stringify(data));
                return data;
            },
            model: model,
            data: "gridUIData",
            total: "total"
        },
        serverPaging: true, // enable server paging
        serverSorting: true,
        sort: { field: "field", dir: "desc" },
        pageSize: 10,
    },
    dataBound: function () {
        $('#GridPanelLoading').hide();
    },
    sortable: true,
    columns: columnArray ,
    detailInit: getView,
    pageable: {
        pageSizes: ["10 Rows", "20 Rows", "30 Rows"],
        refresh: true
    },
    noRecords: {
        template: jsEnumMU.NoRecordsToDisplay
    },
});
 

Если я разделю логику, то есть сначала получу все данные с помощью
вызова ajax, а затем свяжусь с сеткой, это работает, но без сортировки на стороне сервера

Я хочу привязать массив столбцов, который я установил в функции анализа схемы, к конфигурации столбцов. На данный момент значения из источника данных задаются как значения столбцов, так как поле columnArray пусто.