一、概述
WTM是一個基於ASP.NET Core和ElementUI的前後端分離的快速開發框架,包含基礎模塊如用戶、許可權、菜單、角色等的快速開發,提供了數據驅動界面自動生成、模型自動驗證、代碼生成器、可擴展插件、前後端分離等功能。
它可以幫助開發人員快速構建基於B/S架構的信息管理系統,增加代碼的可維護性和可讀性,減小開發成本和周期。
二、模塊功能
以下是WTM框架中常用的模塊功能:
1. 用戶認證
WTM框架內置了用戶認證功能,可以自定義用戶實體、角色實體、資源申請實體,支持JWT、Cookie、Session等多種方式的身份驗證機制。
2. 許可權管理
WTM框架提供多種角色和許可權控制方式,如角色繼承、規則定製、資源管理,可以實現精細化的授權功能。
3. 模塊化菜單管理
WTM框架支持快速生成左側菜單欄,可以靈活配置菜單項、菜單圖標,提供了簡單的路由和重定向功能,支持嵌套菜單和許可權控制。
4. 數據驅動界面生成
WTM框架提供了快速生成業務頁面的功能,通過簡單的配置即可自動生成對應的Vue/React頁面,支持自定義前端框架和樣式庫。
5. 模型自動驗證
WTM框架內置了數據驗證模塊,基於FluentValidation框架,支持鏈式驗證、自定義驗證器、錯誤返回等功能,方便進行參數校驗和模型驗證。
三、使用示例
1. 添加初始化配置
在ASP.NET Core項目的Startup.cs中添加WTM框架的初始化配置,如下所示:
public void ConfigureServices(IServiceCollection services)
{
//添加WTM框架服務
services.AddWTM(options =>
{
options.Global = new GlobalConfig
{
Author = "WTM",
Mapper = MapperEnum.AutoMapper,
ConnectionString = Configuration.GetConnectionString("DefaultConnection"),
DbType = DbTypeEnum.SqlServer
};
options.InjectService = Assembly.GetAssembly(typeof(BaseService)).MakeInjectServices();
options.Modules = new List
{
new ModuleConfig{
ClassName = "Demo",
Author ="WTM",
Area = "XXX",
Description = "Demo示例",
MiniProfiler = true,
Roles = "Admin, System, Developer",
UseCustomAuthorize = true
}
};
});
}
2. 生成業務頁面
通過代碼生成器快速生成業務頁面,可以使用命令行工具或通過Web頁面進行操作。
命令行操作:
wtm codegen -f DemoEFContext -t Demo -a Demo -o D:\WTM-Demo -m Admin,System,Developer
Web操作:在Admin區域下的代碼生成器中,輸入項目名稱、模塊名稱、數據源名稱和生成路徑,即可進行自定義配置的代碼生成。
3. 擴展自定義功能
WTM框架支持插件化開發,可以通過繼承框架提供的基礎類和介面來實現自定義的功能,比如自定義數據驅動模板、自定義業務處理類等。
示例代碼:
public class MyModule : BaseModule
{
public override ModuleConfig Config => new ModuleConfig
{
ClassName = "MyModule",
Description = "自定義模塊",
Author = "WTM",
MiniProfiler = true,
UseCustomAuthorize = true,
Roles = ""
};
public override IMenu BuildMenu()
{
return this.MakeMenu(new MenuConfig
{
Order = int.MaxValue,
Href = "/MyModule/Demo",
Icon = "el-icon-menu",
Text = "自定義模塊",
Children = new List()
}) ;
}
public override IServiceCollection AddServices(IServiceCollection services)
{
services.AddTransient() ;
return services;
}
}
四、總結
WTM框架是一個適用於中小型信息管理系統快速開發的框架,具有快速、靈活、可擴展等特點,能夠方便地進行業務開發和維護,同時提高代碼的可讀性和可維護性。
原創文章,作者:KAOPD,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/361044.html
微信掃一掃
支付寶掃一掃