实现ABP中Person类的权限功能
菜單項(xiàng)的顯示功能已經(jīng)完全OK了。那么我們就開始制作視圖功能吧。
首先測試接口是否正常
我們通過代碼生成器將權(quán)限和application中大部分功能已經(jīng)實(shí)現(xiàn)了。那么我們來測試下這些接口ok不。
瀏覽/apis/index來進(jìn)入swaggerui文檔。
???????
以上都是代碼生成器生成的接口功能。
那么我們先來測試下
/api/services/app/person/GetPagedPersonsAsync 接口, 根據(jù)查詢條件獲取聯(lián)系人分頁列表
提示說我們未登陸。
那我們登錄后再試試
登錄后,再次實(shí)行查詢語句,提示我們沒有person.person權(quán)限。
權(quán)限說明
Required permissions are not granted. At least one of these permissions must be granted: Persons.Person
提示必須要有這個權(quán)限,那么我們看看我們的代碼是怎么實(shí)現(xiàn)的
也就是說此處了權(quán)限判斷,我們沒有訪問這個類的權(quán)限。那么我們怎么辦呢。
添加權(quán)限
一個是添加權(quán)限功能。那么問題來了我們都沒有實(shí)現(xiàn)權(quán)限頁面功能,怎么添加呢。
我這里采用最簡單的方法來實(shí)現(xiàn),就是刪庫。讓我們在初始化admin的時候就將權(quán)限賦予給他。有了思路我們就來實(shí)現(xiàn)他。
初始化權(quán)限信息
打開EntityFramework類庫,找到HostRoleAndUserCreator和TenantRoleAndUserBuilder兩個類文件
var personPermissions =PermissionFinder.GetAllPermissions(new PersonAppAuthorizationProvider()).ToList();permissions.AddRange(personPermissions);添加上面的代碼到 permissions中
然后再次執(zhí)行update-database。
我們運(yùn)行項(xiàng)目然后登陸。
執(zhí)行的結(jié)果就是成功了的。這個時候你就可以在接口中實(shí)現(xiàn)下crud的功能了。
到目前為止整體的crud功能就算是完成了。下一步就是實(shí)現(xiàn)他視圖功能了。
如果你覺得本文章對你有幫助,可以對我打賞哦。屏幕右方
群里可以下載源代碼
交流QQ群:如此。The End
-返回目錄-? ABP打造一個《電話簿項(xiàng)目》
轉(zhuǎn)載于:https://www.cnblogs.com/wer-ltm/p/5778326.html
總結(jié)
以上是生活随笔為你收集整理的实现ABP中Person类的权限功能的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一起来啃书——PHP看书
- 下一篇: C++头文件保护符和变量的声明定义