abp的权限与导航菜单的关系
原來以為各是各的,所以就有了第一個版本.Getallmentus.然后注入了role,當然失敗了.獲取所有的菜單.一直在思考在什么地方設置菜單是否展示呢?
后面看了源碼.才發現自己錯了.
UserNavigationManager(這個是一個框架內部調用的類)會獲取當前userid的所有的菜單,
數據源跟菜單的RequiredPermissionName有關系.
改數據庫中的數據.刷新前臺,沒有反應.找了半天才知道,是用的eventbus來觸發刪除當前緩存數據的.eventbus是自動注冊(未去找自動注冊的實現.)
如下的設計:
AbpUserPermissionCacheItemInvalidator:
IEventHandler<EntityChangedEventData<UserPermissionSetting>>,
IEventHandler<EntityChangedEventData<UserRole>>,
IEventHandler<EntityDeletedEventData<AbpUserBase>>,
ITransientDependency
?
所以只能通過UI去操作才有效果.
?
關于動態的menu,INavigationManager 只能用它來另外處理.建議結構不變.只變名稱和路徑是可以的.
?
也就是說,不能簡單的通過數據庫去改數據庫,必須通過程序..
?
轉載于:https://www.cnblogs.com/forhell/p/7445768.html
總結
以上是生活随笔為你收集整理的abp的权限与导航菜单的关系的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CodeForces 731C Sock
- 下一篇: 藏经阁