3步!用代码生成工具秒建SqlSugar Winform项目?手把手教学,小白也能轻松上手!

关注墨瑾轩,带你探索编程的奥秘!
超萌技术攻略,轻松晋级编程高手
技术宝库已备好,就等你来挖掘
订阅墨瑾轩,智趣学习不孤单
即刻启航,编程之旅更有趣

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

(对比传统开发效率:人工写代码 vs 魔法生成器,谁才是真正的“代码魔法师”?)


代码生成工具——程序员的“魔法棒”

你有没有试过用Excel表格生成代码?或者像搭积木一样拼出一个完整的Winform项目?
SqlSugar + 代码生成工具(比如Database2Sharp)就像给开发流程装上了“火箭推进器”!
传统开发:手动写实体类、接口、界面,动辄上百行代码,调试一整天;
魔法生成器:配置好数据库连接,点几下鼠标,10分钟生成可运行的Winform项目,连登录界面都自带!

今天我们就用代码生成工具Database2Sharp,手把手带你玩转SqlSugar框架的Winform项目搭建。
(温馨提示:全程无痛操作,代码全带注释,连“Hello World”都不会的萌新也能看懂!)


3步走,代码生成器的“炼金术”

第一步:配置数据库连接——魔法的第一道咒语

目标:让工具认识你的数据库,生成对应的代码。
工具准备:下载Database2Sharp(官网),安装后打开。

1.1 配置数据库连接信息
// 在Database2Sharp工具中,点击【数据库】→【连接数据库】
// 输入以下参数(以SqlServer为例):
{
    "服务器": "localhost",  // 数据库地址(本地可用".")
    "用户名": "sa",         // 数据库账号
    "密码": "123456",       // 数据库密码
    "数据库名称": "TestDB"  // 要操作的数据库
}

小贴士:如果连接失败,检查防火墙是否关闭,或数据库是否允许远程连接。

1.2 选择需要生成代码的表
// 在工具左侧的数据库树形列表中,右键点击目标数据库 → 【SqlSugar框架代码生成】
// 在弹出的窗口中:
{
    "选择表": ["User", "Order", "Product"],  // 勾选需要生成代码的表
    "输出路径": "D:\\MyProject\\CodeGen"     // 指定代码生成的目录
}

注意:表名可以是任意数据库表,但建议从简单表开始练手(比如只有3个字段的User表)。


第二步:生成代码——魔法的“炼金炉”

目标:生成可运行的Winform项目代码,包含实体类、服务层、界面层。

2.1 生成代码的目录结构

执行生成后,工具会在指定路径生成以下文件夹:

MyProject/
├── SugarPojectCore/  // 核心服务层(包含实体类、接口、服务实现)
├── SugarPojectWin/   // Winform界面层(包含窗体、控件、数据绑定)
├── Reference/        // 依赖的DLL文件(如SqlSugar.dll)

彩蛋:生成的项目默认包含登录界面、主界面、系统设置界面,连“修改密码”功能都自带!

2.2 核心代码示例:实体类自动生成
// 以User表为例,生成的实体类代码:
[SugarTable("User")]  // 映射数据库表名
public class User 
{
    [SugarColumn(IsPrimaryKey = true)]  // 标记主键
    public int Id { get; set; }

    [SugarColumn(ColumnName = "UserName")]  // 映射字段名
    public string Name { get; set; }

    [SugarColumn(ColumnName = "UserAge")]   // 映射字段名
    public int Age { get; set; }
}

注释解析

  • [SugarTable]:告诉SqlSugar这个类对应数据库的哪张表;
  • [SugarColumn]:定义字段与数据库列的映射关系。
2.3 服务层代码示例:增删改查一键搞定
// 生成的服务类(UserService.cs):
public class UserService 
{
    private readonly ISqlSugarClient _db;  // 注入SqlSugar客户端

    public UserService(ISqlSugarClient db) 
    {
        _db = db;
    }

    // 查询所有用户
    public List<User> GetAllUsers() 
    {
        return _db.Queryable<User>().ToList();  // 使用SqlSugar的查询方法
    }

    // 插入新用户
    public void AddUser(User user) 
    {
        _db.Insertable(user).ExecuteCommand();  // 插入操作
    }
}

小技巧:服务层代码支持自定义扩展,比如添加“根据年龄筛选用户”的方法:

public List<User> GetUsersByAge(int age) 
{
    return _db.Queryable<User>().Where(u => u.Age > age).ToList();
}

第三步:整合项目并运行——魔法的“终极释放”

目标:将生成的代码导入Visual Studio,运行项目并测试功能。

3.1 创建解决方案并引用生成的类库
  1. 打开Visual Studio → 新建空白解决方案(Solution Name: MySolution)。
  2. 右键解决方案 → 【添加】→ 【现有项目】→ 选择 SugarPojectCore/SugarPojectCore.csprojSugarPojectWin/SugarPojectWin.csproj
  3. 右键 SugarPojectWin 项目 → 【添加引用】→ 选择 SugarPojectCoreReference 文件夹中的 DLL。
3.2 修改数据库连接字符串
// 在 `SugarPojectCore` 项目中的 `App.config` 文件中,修改连接字符串:
<connectionStrings>
    <add name="DefaultConnection" 
         connectionString="Server=localhost;Database=TestDB;User ID=sa;Password=123456;" 
         providerName="System.Data.SqlClient" />
</connectionStrings>

注意:确保连接字符串与数据库实际配置一致,否则会报错!

3.3 运行项目并测试功能
  1. 设置启动项目为 SugarPojectWin(右键项目 → 【设为启动项目】)。
  2. 按F5运行,首先进入登录界面(用户名/密码默认为 admin/123)。
  3. 登录成功后,进入主界面,点击菜单项即可操作生成的表(如User表)。

实战案例

  • 新增用户:在界面中输入姓名和年龄,点击“保存”按钮,观察数据库是否新增记录;
  • 查询用户:输入年龄筛选条件,验证服务层自定义方法是否生效。

结论:代码生成工具的“魔法”总结

传统开发 vs 魔法生成器

维度 传统开发 代码生成器
开发时间 人工写代码,耗时数小时 自动生成代码,10分钟搞定
代码质量 容易遗漏字段或逻辑错误 结构清晰,注释详细
维护成本 修改需求需重新写代码 修改数据库表后,重新生成即可

代码生成工具的“隐藏技能”

  1. 一键生成多项目:支持同时生成Winform、WPF、Web API等多个项目的代码;
  2. 模板自定义:修改生成器模板,可定制代码风格(比如使用Lombok风格的C#代码);
  3. 团队协作神器:统一代码生成规范,减少“个人编码风格差异”导致的冲突。

最后的小建议

  • 新手入门:先用简单表(如User表)测试生成器功能;
  • 进阶玩法:结合AI工具(如飞算JavaAI)生成业务逻辑代码,再用生成器处理数据层;
  • 避坑指南:生成代码后,记得检查实体类字段是否与数据库完全匹配!

彩蛋:代码生成器的“黑科技”

问题:如果数据库表结构频繁变更怎么办?
答案:代码生成器支持增量更新!只需重新生成代码,工具会自动保留你修改过的代码(比如自定义的业务逻辑),只覆盖数据库相关的部分。

示例

  1. 在数据库中新增 User.Email 字段;
  2. 重新运行代码生成器,工具会自动在 User.cs 中添加 Email 属性;
  3. 在Winform界面中,新增一个文本框绑定 Email 字段,无需手动编写任何代码!

结语
代码生成工具就像程序员的“外挂”,让重复性工作变成“一键操作”。
现在,轮到你了!

(快去试试吧,说不定你就是下一个“代码魔法师”!)

你可能感兴趣的:(数据库学习,oracle,数据库)