EasyAdminBlazor 快速上手
一、项目概述
EasyAdminBlazor
是一个基于 .NET 9.0 的项目,用于开发管理后台相关功能。此项目运用 BootstrapBlazor
组件库搭建用户界面,借助 FreeSql
进行数据访问操作,前台使用 Razor pages。不用写js,不用对接接口,不用前后端分离,可快速完成中小型项目,是个人接单的利器。
主要功能
- 用户管理:包括用户信息的增删改查、导入导出。
- 角色管理:管理用户角色,包括角色信息的增删改查,角色菜单权限的分配。
- 菜单管理:管理系统菜单,包括菜单信息的增删改查。
- 部门管理:管理部门信息,包括部门信息的增删改查。
- 参数配置:管理系统参数,包括参数信息的增删改查。
- 字典管理:管理字典信息,包括字典信息的增删改查。
- 日志管理:管理系统日志,包括异常日志、操作日志、登录日志的查询。
- 文件管理:文件批量上传与删除。
- 代码生成:根据实体类生成对应管理页面。
- 数据权限:支持数据权限,根据角色分配数据权限。
- 多数据库:支持多种数据库。
- 多语言:支持多语言切换。
- 多租户:支持多租户,多租户可共用一个库,也可以给租户设置独立的数据库。
- 在线聊天:支持管理员间实时聊天。
二、运行环境
- .NET SDK:9.0
三、运行步骤(源码模式)
- 克隆项目到本地(个人版和企业版源码获取方式见首页)。
- 使用 Visual Studio 2022 打开
EasyAdminBlazor.sln
文件。 - 在
EasyAdminBlazor.Test
项目下的wwwroot
文件夹上右键,选择“在浏览器中查看”。
四、运行步骤(nuget模式)
- 新建.net9 blaor server模式项目。
- 安装
EasyAdminBlazor
包。
dotnet add package EasyAdminBlazor
- 打开
Program.cs
添加以下配置
builder.AddEasyAdminBlazor(new EasyAdminBlazorOptions
{
Assemblies = [typeof(Program).Assembly],
FreeSqlBuilder = a => a
.UseConnectionString(DataType.MySql, configuration["ConnectionStrings:default"])
.UseMonitorCommand(cmd => System.Console.WriteLine($"[{DateTime.Now.ToString("HH:mm:ss")}] {cmd.CommandText}\r\n"))//监听SQL语句
.UseAutoSyncStructure(true)
});
// 添加smtp邮件扩展
builder.Services.AddEasyAdminBlazorMailService(configuration);
// 添加阿里云短信扩展
builder.Services.AddEasyAdminBlazorAliyunSmsService(configuration);
// 编辑器插件
builder.Services.AddEasyAdminBlazorTinyMCEEditorService();
// 聊天插件(依赖redis)
builder.Services.AddEasyAdminBlazorChatService();
// 导出导入
builder.Services.AddBootstrapBlazorTableExportService();
// 使用BootstrapBlazor
app.UseBootstrapBlazor();
app.MapRazorComponents<App>()
.AddAdditionalAssemblies(typeof(EasyAdminBlazor._Imports).Assembly)
.AddInteractiveServerRenderMode();
// 使用聊天插件
app.UseChat();
appsettings.cs
添加配置
{
"ConnectionStrings": {
"Default": "Data Source=127.0.0.1;Port=3306;User ID=root;Password=123456; Initial Catalog=freesql;Charset=utf8mb4; SslMode=none;Min pool size=1"
},
"Redis": {
"ConnectionString": "127.0.0.1:6379,poolsize=10"
},
"SmtpSettings": {
"Server": "smtp.example.com",
"Port": 587,
"Username": "your_email@example.com",
"Password": "your_email_password",
"FromEmail": "your_email@example.com",
"EnableSsl": true
},
"AliyunSms": {
"AccessKeyId": "your-access-key-id",
"AccessKeySecret": "your-access-key-secret",
"SignName": "your-sign-name"
}
}
- 编译通过后在项目下的
wwwroot
文件夹上右键,选择“在浏览器中查看”。/Admin/
即是后台管理地址。