我需要一种通过剑道用户界面添加菜单的方法..但菜单需要能够只为某些用户显示某些菜单项......即管理员应该看到所有菜单,而其他员工只能看到一个子集那些菜单......我怎样才能使用授权属性来实现这一点?任何代码示例或链接都会非常有帮助
谢谢
VB
我需要一种通过剑道用户界面添加菜单的方法..但菜单需要能够只为某些用户显示某些菜单项......即管理员应该看到所有菜单,而其他员工只能看到一个子集那些菜单......我怎样才能使用授权属性来实现这一点?任何代码示例或链接都会非常有帮助
谢谢
VB
Kendo UI 开箱即用地支持这一点。只需将 Authorize 属性添加到您的操作并使用 Kendo 服务器端包装器:
@(Html.Kendo().Menu()
.Name("menu")
.Items(items =>
{
items.Add()
.Text("Home")
.Action("Index", "Home");
})
)
http://www.kendoui.com/forums/ui/menu/binding-to-sitemap-with-security-trimming-on-roles.aspx
http://docs.kendoui.com/api/wrappers/aspnet-mvc/Kendo.Mvc.UI.Fluent/MenuBuilder
由于 MVC 是基于约定的,因此您需要确保通过 url 阻止控制器访问除了隐藏菜单之外
您需要设置一个自定义提供程序,以便您可以更轻松地使用角色,然后您需要将菜单放入动态构建菜单的局部视图中。
我四处寻找,找到了一个很好地解释它的网站,我认为:
自定义提供者: http ://techbrij.com/custom-roleprovider-authorization-asp-net-mvc