我正在使用ASP.NET MVC中的Kendo UI网格。是否可以根据用户角色隐藏/显示网格列?谢谢。
我正在使用ASP.NET MVC中的Kendo UI网格。是否可以根据用户角色隐藏/显示网格列?谢谢。
最简单的方法是:
@(Html.Kendo().Grid(Model)
.Name("Grid")
.Columns(columns =>
{
columns.Bound(p => p.Id);
columns.Bound(p => p.Name);
if(User.IsInRole("Admin")) {
columns.Bound(p => p.AdminOnlyInfo);
}
})
...
)
ViewBag.CanDisplay = true; // or omit if the user does not have permission
在这个视角下
var canDisplay = '@ViewBag.CanDisplay' | false;
$("#grid").kendoGrid({
columns: [
{ field: "firstProperty" },
{ field: "anotherProperty", hidden: !canDisplay }
],
bool CanDisplay
属性),而不是 ViewBag
。 - user3559349var canDisplay ='@Model.CanDisplay' === 'True';
- user3559349
.Columns()
方法是否接收Column
对象的数组?如果是,您可以正常创建数组,并在最后将其作为参数传递。 - Catalin