我有一个使用 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 一起传递,并在视图中使用它来动态绑定列.