Связывание столбцов на стороне контроллера для Telerik MVC Grid - PullRequest
1 голос
/ 24 августа 2010

У меня есть частичное представление, которое использует Telerik MVC Grid, и оно имеет следующий код привязки столбцов (очень частичное представление):

.Columns(column =>
{
    column.Bound(model => model.PlannedFinishDate).Title("Planned Date").Format("{0:dd/MM/yyyy}").Width(83);
    column.Bound(model => model.Province).Width(70);
    if (Roles.IsUserInRole("Controller") == true)
    {
        column.Bound(model => model.InstallerName).Width(85);
        column.Bound(model => model.InstallerAccepted).Title("Accepted").Width(45);
        column.Bound(model => model.KitShippedDescription).Width(70);
    }
// etc. etc.

Теперь мне нужно написать действие контроллера для экспорта того же самогоданные отображаются в сетке в Excel, и мне нужно включить / исключить столбец с той же ролью.Я не хочу дублировать логику проверки ролей, поэтому я ищу способ генерирования данных, используемых здесь для привязки столбцов в контроллере, передачи их вместе с ViewData и использования в представлении для динамического связывания столбцов..

1 Ответ

1 голос
/ 24 августа 2010

Возможно, этот пример поможет.Однако здесь есть отказ от ответственности - он все еще находится в бета-версии, и окончательный API будет изменен с

.Columns((IEnumerable<GridColumnSettings<T>>)ViewData["Columns"])

на

.Columns(columns => columns.LoadSettings((IEnumerable<GridColumnSettings<T>>)ViewData["Columns"]))
...