EasyAdminBlazor 快速上手

一、项目概述

EasyAdminBlazor 是一个基于 .NET 9.0 的项目,用于开发管理后台相关功能。此项目运用 BootstrapBlazor 组件库搭建用户界面,借助 FreeSql 进行数据访问操作,前台使用 Razor pages。不用写js,不用对接接口,不用前后端分离,可快速完成中小型项目,是个人接单的利器。

主要功能

  • 用户管理:包括用户信息的增删改查、导入导出。
  • 角色管理:管理用户角色,包括角色信息的增删改查,角色菜单权限的分配。
  • 菜单管理:管理系统菜单,包括菜单信息的增删改查。
  • 部门管理:管理部门信息,包括部门信息的增删改查。
  • 参数配置:管理系统参数,包括参数信息的增删改查。
  • 字典管理:管理字典信息,包括字典信息的增删改查。
  • 日志管理:管理系统日志,包括异常日志、操作日志、登录日志的查询。
  • 文件管理:文件批量上传与删除。
  • 代码生成:根据实体类生成对应管理页面。
  • 数据权限:支持数据权限,根据角色分配数据权限。
  • 多数据库:支持多种数据库。
  • 多语言:支持多语言切换。
  • 多租户:支持多租户,多租户可共用一个库,也可以给租户设置独立的数据库。
  • 在线聊天:支持管理员间实时聊天。

二、运行环境

  • .NET SDK:9.0

三、运行步骤(源码模式)

  1. 克隆项目到本地(个人版和企业版源码获取方式见首页)。
  2. 使用 Visual Studio 2022 打开 EasyAdminBlazor.sln 文件。
  3. EasyAdminBlazor.Test 项目下的 wwwroot 文件夹上右键,选择“在浏览器中查看”。

四、运行步骤(nuget模式)

  1. 新建.net9 blaor server模式项目。
  2. 安装 EasyAdminBlazor 包。
dotnet add package EasyAdminBlazor
  1. 打开 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();
  1. 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"
  }
}
  1. 编译通过后在项目下的 wwwroot 文件夹上右键,选择“在浏览器中查看”。/Admin/即是后台管理地址。