admin.net框架中代码生成器使用心得

Admin.NET框架代码生成器使用心得

一、代码生成器

代码生成器是一种自动化工具,通过预先设定的模板和规则,代码生成器能够在短时间内自动生成大量基础代码,如实体类、数据访问层、服务层、控制器层等,大大减少了程序员手动编写重复代码的工作量。对于常见的CRUD操作(创建、读取、更新、删除),代码生成器可以迅速产出对应的功能模块,极大地加快了项目的启动速度和迭代速度。减少人力投入,缩短项目周期,间接降低了企业的开发成本和运营成本。

对于现今较为集中的项目开发需求与人员投入情况,代码生成器的功能实现十分迫切。

二、Admin.NET框架生成代码

1、运行项目

克隆项目并运行,运行方法在项目介绍README.md文件中有详细讲解,在此不过多赘述。

在这里插入图片描述

2、创建实体类

在数据库中创建需要的表,并且字段整理好,我这里以一张教师信息表为例:

在这里插入图片描述

在前端页面中找到库表管理,选中库名与表名后,点击生成实体。

在这里插入图片描述

需要将下面的信息根据需求进行选择,实体名称就是生成实体类的名,存放位置选择合适的类库进行存放实体类。

在这里插入图片描述

基类的选择如下图,我这里选择的是基础实体,也可以不选择。选择后,你的数据库中会出现你选择的实体的字段。

在这里插入图片描述

实体基类会新增的字段如下图 ,其他选项新增字段可以在后端的EntityBase.cs中查看。

在这里插入图片描述

点击确认后即可在后端文件中找到生成的实体类。

在这里插入图片描述

3、生成页面与接口

找到代码生成页面,点击增加按钮,选择需要生成的数据表,并将信息填写完整。

其中业务名就是生成的菜单名称;命名空间是保存代码的位置。生成方式分为生成到本项目与下载压缩包,如果选择生成本项目,那么代码会直接生成到你的文件夹里面,重新启动服务就行;如果选择的是下载压缩包,则会生成一个压缩包让你下载,自行选择生成代码的位置。(推荐使用下载压缩包)

在这里插入图片描述

确定后可以进行页面配置。

在这里插入图片描述

你可以选择搜索框的类型,是否显示等等。

在这里插入图片描述

配置好后点击生成即可。

在这里插入图片描述

前端会在src目录下生成api与views两个文件夹的内容,后端会在所选类库下生成对应的service。

在这里插入图片描述
在这里插入图片描述

4、案例展示

在订餐系统中的使用,大大提升了开发效率。

在这里插入图片描述

三、注意事项

1、在生成代码前,必须先生成实体类,不然无法生成代码。

2、推荐使用下载压缩包进行代码生成

如果选择生成代码到项目,后端文件都是生成在service文件夹中;但是前端页面会生成到views文件夹下的main文件夹中,如果生成量较大不利于维护。

如果使用下载压缩包的方式则可以自由选择文件存放位置,只需要配置好路由即可,便于维护。

需要注意的是,生成后的页面没有使用组件进行页面搭建,直接使用的原生代码,并且没有导出与表格编辑功能,需根据需求进行修改。

3、生成种子

如果需要生成测试数据,可以点击生成种子,可以根据你的需要生成测试数据,需要重启后端服务才能起作用。

在这里插入图片描述

后端会生成该数据库表的种子数据文件。

在这里插入图片描述

其中TeacherSeedData的代码如下:

using Admin.NET.Core;
using Admin.NET.Application.Entity;

namespace Admin.NET.Application.SeedData;

/// <summary>
///  表种子数据
/// </summary>
public class TeacherSeedData: ISqlSugarEntitySeedData<Teacher>
{
    /// <summary>
    /// 种子数据
    /// </summary>
    /// <returns></returns>
    public IEnumerable<Teacher> HasData()
    {
        string recordsJSON = @"
            []
        ";
        List<Teacher> records = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Teacher>>(recordsJSON);
        
        // 后处理数据的特殊字段
		//for (int i = 0; i < records.Count; i++) { }

        return records;
    }
}

猜你喜欢

转载自blog.csdn.net/m0_59415345/article/details/139579361