實現ABP中Person類的權限功能


菜單項的顯示功能已經完全OK了。那么我們就開始制作視圖功能吧。

首先測試接口是否正常

我們通過代碼生成器將權限和application中大部分功能已經實現了。那么我們來測試下這些接口ok不。

瀏覽/apis/index來進入swaggerui文檔。

        image

以上都是代碼生成器生成的接口功能。

那么我們先來測試下

/api/services/app/person/GetPagedPersonsAsync 接口, 根據查詢條件獲取聯系人分頁列表

image

提示說我們未登陸。

那我們登錄后再試試

image

登錄后,再次實行查詢語句,提示我們沒有person.person權限。

image

權限說明

Required permissions are not granted. At least one of these permissions must be granted: Persons.Person

提示必須要有這個權限,那么我們看看我們的代碼是怎么實現的

image

也就是說此處了權限判斷,我們沒有訪問這個類的權限。那么我們怎么辦呢。

添加權限

一個是添加權限功能。那么問題來了我們都沒有實現權限頁面功能,怎么添加呢。

我這里采用最簡單的方法來實現,就是刪庫。讓我們在初始化admin的時候就將權限賦予給他。有了思路我們就來實現他。

初始化權限信息

打開EntityFramework類庫,找到HostRoleAndUserCreator和TenantRoleAndUserBuilder兩個類文件

var personPermissions =
                 PermissionFinder.GetAllPermissions(new PersonAppAuthorizationProvider()).ToList();
                permissions.AddRange(personPermissions);

添加上面的代碼到 permissions中

image

然后再次執行update-database。

我們運行項目然后登陸。

image

執行的結果就是成功了的。這個時候你就可以在接口中實現下crud的功能了。

到目前為止整體的crud功能就算是完成了。下一步就是實現他視圖功能了。

如果你覺得本文章對你有幫助,可以對我打賞哦。屏幕右方

群里可以下載源代碼

交流QQ群: ABP代碼生成器交流群

如此。The End

-返回目錄-  ABP打造一個《電話簿項目》


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM