1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        Admin.NET基于.NET 的通用管理平臺(tái)

        聯(lián)合創(chuàng)作 · 2023-09-19 14:27

        Admin.NET 是基于.NET 5/6 實(shí)現(xiàn)的通用管理平臺(tái)。整合最新技術(shù),模塊插件式開(kāi)發(fā),前后端分離,開(kāi)箱即用。

        • 后臺(tái)基于Furion框架,vue2前端基于小諾框架,vue3前端基于Vben-Admin框架。
        • 集成EF Core、多租戶、緩存、數(shù)據(jù)校驗(yàn)、鑒權(quán)、事件總線、動(dòng)態(tài)API、通訊、遠(yuǎn)程請(qǐng)求、任務(wù)調(diào)度、gRPC等眾多黑科技。
        • 核心模塊包括:用戶、角色、職位、組織機(jī)構(gòu)、菜單、字典、日志、多應(yīng)用管理、文件管理、定時(shí)任務(wù)等功能。
        • 代碼簡(jiǎn)潔、易擴(kuò)展,讓開(kāi)發(fā)更簡(jiǎn)單、更通用、更流行!
        如果對(duì)您有幫助,點(diǎn)擊右上角?Star?關(guān)注 ,感謝支持開(kāi)源!
        

        Stargazers over time

        ?? 框架拓展包

        更新不及時(shí),建議使用源碼

        包類(lèi)型 名稱 版本 描述
        nuget Furion.Extras.Admin.NET nuget Admin.NET 核心包
        可自行按照 Furion 框架腳手架初始化工程,然后引用此包即可,其他層配置見(jiàn)源代碼。??此包會(huì)緊跟Furion版本更新而更新。
        

        ?? 框架腳手架

        模板類(lèi)型 名稱 版本 描述
        nuget Furion.Admin.NET.Template.App nuget Admin.NET 框架模板
        打開(kāi) CMD 或 Powershell 執(zhí)行dotnet命令
        
        1、安裝腳手架
        dotnet new --install Furion.Admin.NET.Template.App
        
        2、更新腳手架
        dotnet new --install Furion.Admin.NET.Template.App
        
        3、使用腳手架(生成之后推薦將所有的 nuget 包更新到最新版本)
        dotnet new Admin.NET -n 你的項(xiàng)目名稱
        
        其實(shí)安裝之后可以直接在VS里面進(jìn)行可視化及創(chuàng)建工程
        

        ?? ?? 模塊/插件化開(kāi)發(fā)

        • 按照 Furion 框架腳手架或者本框架腳手架初始化工程。
        • 創(chuàng)建自己業(yè)務(wù)的 Dll 插件庫(kù)工程,引用 Furion.Extras.Admin.NET 包,編寫(xiě)自己的業(yè)務(wù)代碼包括實(shí)體、服務(wù)等。
        • 在 XXX.Web.Entry 層里面的 appsettings.json 配置此插件 Dll 的路徑。配置文檔說(shuō)明
        • 此時(shí)框架和自己業(yè)務(wù)實(shí)體可以同時(shí)做數(shù)據(jù)遷移,耦合度最低。也可以自行將數(shù)據(jù)庫(kù)分系統(tǒng)庫(kù)、業(yè)務(wù)庫(kù)等。
        • 將自己業(yè)務(wù)前端代碼包括view和api文件復(fù)制到前端工程相應(yīng)目錄即可。

        倉(cāng)庫(kù)內(nèi) plugin 文件內(nèi)為本框架模塊/插件開(kāi)發(fā)事例,供參考。

        ?? 插件市場(chǎng)

        歡迎大家勇于參與開(kāi)源,貢獻(xiàn)自己的應(yīng)用插件,你我都可以做到,.NET正在迅速崛起,我們都是歷史的見(jiàn)證人??

        【核酸采集系統(tǒng)】

        ?? 前后端一體化

        將后臺(tái)提供的Swagger接口直接生成對(duì)應(yīng)前端的API文件,前端再也不需要手?jǐn)]一個(gè)個(gè)的對(duì)應(yīng)后后的API定義了。后臺(tái)接口更新后,只需要重新生成一遍覆蓋即可。

        詳細(xì)教程見(jiàn)群里面視頻文件【Fur課堂_20201028前后端(第1部份).mp4】、【Fur課堂_20201028前后端(第2部份).mp4】

        增加了Vue3.0、Vite、Antd、TypeScript模式的UI框架,希望大家來(lái)一來(lái)完善各頁(yè)面應(yīng)用,感謝??????

        ?? 衍生版本

        Admin.NET】隆重推出SqlSugar版本

        如果集成其他ORM,請(qǐng)參照各自操作使用說(shuō)明。系統(tǒng)默認(rèn)EFCore不會(huì)處理其他ORM實(shí)體等,請(qǐng)自行處理。

        ?? 多租戶簡(jiǎn)介

        框架目前采用基于共享數(shù)據(jù)庫(kù)TenantId的方式實(shí)現(xiàn),后期可無(wú)縫遷移轉(zhuǎn)換到基于多庫(kù)或者Schema模式。

        • 平臺(tái)超管對(duì)租戶進(jìn)行增刪改查操作,對(duì)各租戶進(jìn)行權(quán)限(菜單)的分配,租戶管理員密碼默認(rèn)123456
        • 租戶管理員根據(jù)平臺(tái)分配的權(quán)限再對(duì)本租戶內(nèi)用戶進(jìn)一步權(quán)限劃分
        • 針對(duì)新開(kāi)發(fā)的業(yè)務(wù)功能,平臺(tái)超管可以針對(duì)性分配給各租戶(比如某租戶購(gòu)買(mǎi)后才有此功能菜單等)

        ?? 更新日志

        更新日志 點(diǎn)擊查看

        ?? 在線體驗(yàn)

        • 開(kāi)發(fā)者租戶:用戶名:superAdmin,密碼:123456
        • 公司1租戶: 公司1租戶管理員(用戶名:[email protected] 密碼:123456),公司1租戶普通用戶(用戶名:[email protected] 密碼:123456)

        ?? 快速啟動(dòng)

        需要安裝:VS2019(最新版)、npm或yarn(最新版)

        • 啟動(dòng)后臺(tái):打開(kāi)backend/Admin.NET.sln解決方案,直接運(yùn)行(F5)即可啟動(dòng)(數(shù)據(jù)庫(kù)默認(rèn)SQLite)
        • 啟動(dòng)前端:VSCode或HBuilder,打開(kāi)frontend文件夾,進(jìn)行依賴下載,運(yùn)行npm install或yarn命令,再運(yùn)行npm run serve或 yarn run serve
        • 瀏覽器訪問(wèn):http://localhost:81 (默認(rèn)前端端口為:81,后臺(tái)端口為:5566)

        ?? 分層說(shuō)明

        ├─Admin.NET.Application             ->業(yè)務(wù)應(yīng)用層,在此寫(xiě)您具體業(yè)務(wù)代碼
        ├─Admin.NET.Core                    ->框架核心層
        ├─Admin.NET.Database.Migrations     ->架構(gòu)維護(hù)層,主要存放遷移中間文件
        ├─Admin.NET.EntityFramework.Core    ->EF Core配置層,主要配置數(shù)據(jù)庫(kù)及相關(guān)
        ├─Admin.NET.Web.Core                ->Web核心層,主要是服務(wù)注冊(cè)及鑒權(quán)
        ├─Admin.NET.Web.Entry               ->Web入口層/啟動(dòng)層,可任意更換
        ├─Furion.Extras.Admin.NET           ->封裝的框架核心層,已做成NuGet包
        注:源碼直接開(kāi)發(fā)建議自己的業(yè)務(wù)代碼直接寫(xiě)在【Admin.NET.Application】層里面,可隨框架升級(jí)減少?zèng)_突。或直接用模板腳手架創(chuàng)建自己的工程。
        

        ?? 幫助文檔

        ??后臺(tái)文檔:

        ??前端文檔:

        1. Ant Design Pro of Vue 使用文檔 https://pro.antdv.com/docs/getting-started
        2. Ant Design of Vue 組件文檔 https://www.antdv.com/docs/vue/getting-started-cn/
        3. Vue 開(kāi)發(fā)文檔 https://cn.vuejs.org/v2/guide/

        ??快捷部署到 linux 文檔:

        ??代碼生成器使用教程:

        ??fork項(xiàng)目后該這樣做后續(xù)開(kāi)發(fā):

        ??關(guān)于signalr使用:

        ??通讀以上文檔,您就可以玩轉(zhuǎn)本項(xiàng)目了(其實(shí)您已經(jīng)是高手了)。項(xiàng)目使用上的問(wèn)題,文檔中基本都可以找到答案。

        ?? 效果圖

        ?? 詳細(xì)功能

        1. 主控面板、控制臺(tái)頁(yè)面,可進(jìn)行工作臺(tái),分析頁(yè),統(tǒng)計(jì)等功能的展示。
        2. 用戶管理、對(duì)企業(yè)用戶和系統(tǒng)管理員用戶的維護(hù),可綁定用戶職務(wù),機(jī)構(gòu),角色,數(shù)據(jù)權(quán)限等。
        3. 應(yīng)用管理、通過(guò)應(yīng)用來(lái)控制不同維度的菜單展示。
        4. 機(jī)構(gòu)管理、公司組織架構(gòu)維護(hù),支持多層級(jí)結(jié)構(gòu)的樹(shù)形結(jié)構(gòu)。
        5. 職位管理、用戶職務(wù)管理,職務(wù)可作為用戶的一個(gè)標(biāo)簽,職務(wù)目前沒(méi)有和權(quán)限等其他功能掛鉤。
        6. 菜單管理、菜單目錄,菜單,和按鈕的維護(hù)是權(quán)限控制的基本單位。
        7. 角色管理、角色綁定菜單后,可限制相關(guān)角色的人員登錄系統(tǒng)的功能范圍。角色也可以綁定數(shù)據(jù)授權(quán)范圍。
        8. 字典管理、系統(tǒng)內(nèi)各種枚舉類(lèi)型的維護(hù)。
        9. 訪問(wèn)日志、用戶的登錄和退出日志的查看和管理。
        10. 操作日志、用戶的操作業(yè)務(wù)的日志的查看和管理。
        11. 服務(wù)監(jiān)控、服務(wù)器的運(yùn)行狀態(tài),CPU、內(nèi)存、網(wǎng)絡(luò)等信息數(shù)據(jù)的查看。
        12. 在線用戶、當(dāng)前系統(tǒng)在線用戶的查看。
        13. 公告管理、系統(tǒng)的公告的管理。
        14. 文件管理、文件的上傳下載查看等操作,文件可使用本地存儲(chǔ),阿里云oss,騰訊cos接入,支持拓展。
        15. 定時(shí)任務(wù)、定時(shí)任務(wù)的維護(hù),通過(guò)cron表達(dá)式控制任務(wù)的執(zhí)行頻率。
        16. 系統(tǒng)配置、系統(tǒng)運(yùn)行的參數(shù)的維護(hù),參數(shù)的配置與系統(tǒng)運(yùn)行機(jī)制息息相關(guān)。
        17. 郵件發(fā)送、發(fā)送郵件功能。
        18. 短信發(fā)送、短信發(fā)送功能,可使用阿里云sms,騰訊云sms,支持拓展。

        ?? 數(shù)據(jù)庫(kù)操作

        本框架ORM默認(rèn)采用EF Core開(kāi)發(fā),加上拓展比如SqlSugar,理論上兼容并支持所有類(lèi)型數(shù)據(jù)庫(kù)。??

        【MySQL】

        1. Admin.NET.EntityFramework.Core 項(xiàng)目安裝 Pomelo.EntityFrameworkCore.MySql,Nuget 需安裝 5.0 版本 (支持 MySql 5.x +) MySql.EntityFrameworkCore:支持 (MySql 8.x +)
        2. DefaultDbContext.cs 指定 DbProvider , [AppDbContext("DefaultConnection", DbProvider.MySql)]
        3. dbsettings.json 配置 "DefaultConnection": "Data Source=localhost;Database=Admin.NET;User ID=root;Password=000000;pooling=true;port=3306;sslmode=none;CharSet=utf8;"
        4. 打開(kāi)程序包管理器控制臺(tái),默認(rèn)項(xiàng)目Admin.NET.Database.Migrations 執(zhí)行命令:Add-Migration Init和update-database

        【SQLServer】

        1. Admin.NET.EntityFramework.Core 項(xiàng)目安裝 Microsoft.EntityFrameworkCore.SqlServer
        2. DefaultDbContext.cs 指定 DbProvider , [AppDbContext("DefaultConnection", DbProvider.SqlServer)]
        3. dbsettings.json 配置 "DefaultConnection": "Server=localhost;Database=Admin.NET;User=sa;Password=000000;MultipleActiveResultSets=True;"
        4. 打開(kāi)程序包管理器控制臺(tái),默認(rèn)項(xiàng)目Admin.NET.Database.Migrations 執(zhí)行命令:Add-Migration Init 和 update-database
        提示:其他類(lèi)型數(shù)據(jù)庫(kù)依次類(lèi)推,首先添加EF的Core版包,然后指定數(shù)據(jù)庫(kù)類(lèi)型,修改數(shù)據(jù)庫(kù)連接字符串,執(zhí)行EF遷移命令即可。
        

        【數(shù)據(jù)庫(kù)初始化操作】 GIT完成后默認(rèn)為SqlLite數(shù)據(jù)庫(kù),使用其他數(shù)據(jù)庫(kù)可通過(guò)基于EF Core的CodeFirst初始化,添加好拓展包,創(chuàng)建好空數(shù)據(jù)庫(kù),設(shè)置好數(shù)據(jù)庫(kù)信息和后,即可通過(guò)此操作可進(jìn)行數(shù)據(jù)庫(kù)初始化操作。

        1. 啟動(dòng)項(xiàng)目設(shè)置為 XXXX.Web.Entry
        2. 程序包管理控制臺(tái)默認(rèn)項(xiàng)目設(shè)置為 XXXX.Database.Migrations
        3. 依次輸入并回車(chē)執(zhí)行
            Add-Migration v1.0.0 -Context DefaultDbContext
            update-database v1.0.0 -Context DefaultDbContext
            Add-Migration v1.0.0 -Context MultiTenantDbContext
            update-database v1.0.0 -Context MultiTenantDbContext
        

        至此完成初始數(shù)據(jù)部署。后期添加/修改自己業(yè)務(wù)的數(shù)據(jù)類(lèi)后通過(guò)更新版本號(hào)來(lái)更新數(shù)據(jù)庫(kù)即可。

            Add-Migration v1.0.1 -Context DefaultDbContext
            update-database v1.0.1 -Context DefaultDbContext
            Add-Migration v1.0.1 -Context MultiTenantDbContext
            update-database v1.0.1 -Context MultiTenantDbContext
        

        【EF批量操作】

        使用 Zack.EFCore.Batch https://hub.fastgit.org/yangzhongke/Zack.EFCore.Batch 安裝對(duì)應(yīng)包即可

        1. MSSQL:Zack.EFCore.Batch.MSSQL
        2. MySql:Zack.EFCore.Batch.MySQL.Pomelo
        3. Npgsql:Zack.EFCore.Batch.Npgsql
        4. Oracle:Zack.EFCore.Batch.Oracle
        5. Sqlite:Zack.EFCore.Batch.Sqlite
        提示:記得修改Admin.NET.EntityFramework.Core層里面Startup注冊(cè)服務(wù)類(lèi)型 opt.UseBatchEF_Sqlite(), 改成相應(yīng)得庫(kù)類(lèi)型。
        

        ?? 貢獻(xiàn)代碼

        Admin.NET 遵循 Apache-2.0 開(kāi)源協(xié)議,歡迎大家提交 PRIssue

        感謝每一位貢獻(xiàn)代碼的朋友。感謝 TLog 作者 提供的貢獻(xiàn)者實(shí)時(shí)頭像。

        Giteye chart

        ?? 特別鳴謝

        瀏覽 38
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        編輯 分享
        舉報(bào)
        評(píng)論
        圖片
        表情
        推薦
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        編輯 分享
        舉報(bào)
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            国产精品不卡在线 | zzijzzij亚洲日本成熟少妇 | 黄色片网站国产干 | 五月色婷婷超清 | 无码视频免费看 | 久久久久有精品国产白浆天美传媒 | 人人添人人澡人人澡人人人人 | 男倌被各种玉势调教h电影 | reaganfoxx欧美一区 | 欧美色影视 |