通用框架

开发时经常将数据处理区分为:单表、一对多、多对多三种模式,同一模式在处理过程基本相同,为提高开发效率,平台通过VS扩展,对平时使用频率较高的模式提供代码框架,这样避免了很多重复的工作,当然框架不是万能的,可以通过继续修改以支持特定需求。

以下演示如何利用VS扩展对三种模式生成代码框架,演示前先参见初始化数据库准备环境。

注意
请始终保持Svc运行状态,VS扩展工具会使用该服务

单实体框架

  1. 该实例演示单表增删改查的功能

  2. Demo.Base项目中已生成表crud_基础的实体类基础X,参见生成实体代码

/dt-docs/4%E5%AE%9E%E4%BD%93%E6%A1%86%E6%9E%B6/4%E9%80%9A%E7%94%A8%E6%A1%86%E6%9E%B6/1.png

  1. 添加代码框架,右键选择搬运工 -> 单实体框架,点击选择,选择表crud_基础,点击确认,生成框架文件 /dt-docs/4%E5%AE%9E%E4%BD%93%E6%A1%86%E6%9E%B6/4%E9%80%9A%E7%94%A8%E6%A1%86%E6%9E%B6/2.png /dt-docs/4%E5%AE%9E%E4%BD%93%E6%A1%86%E6%9E%B6/4%E9%80%9A%E7%94%A8%E6%A1%86%E6%9E%B6/3.png /dt-docs/4%E5%AE%9E%E4%BD%93%E6%A1%86%E6%9E%B6/4%E9%80%9A%E7%94%A8%E6%A1%86%E6%9E%B6/4.png /dt-docs/4%E5%AE%9E%E4%BD%93%E6%A1%86%E6%9E%B6/4%E9%80%9A%E7%94%A8%E6%A1%86%E6%9E%B6/5.png

  2. 将Win项目设置为启动项目,F5启动调试,登录成功后在主页左侧菜单中点击菜单管理,然后增加菜单单实体,视图名称基础,参见添加菜单,成功保存后,将菜单授权任何人,切记更新缓存 /dt-docs/4%E5%AE%9E%E4%BD%93%E6%A1%86%E6%9E%B6/4%E9%80%9A%E7%94%A8%E6%A1%86%E6%9E%B6/6.png

  3. 关闭并重新启动应用,登录成功后在主页左侧菜单中点击单实体,将显示单表的增删改查窗口 /dt-docs/4%E5%AE%9E%E4%BD%93%E6%A1%86%E6%9E%B6/4%E9%80%9A%E7%94%A8%E6%A1%86%E6%9E%B6/7.png

  4. 增删改查的功能都已实现,可以直接使用,当然也可以根据需要修改代码,框架生成的代码在Demo.Crud\单实体\基础目录下,主要有以下几个文件:

    • 基础Win.xaml 基础Win.xaml.cs:窗口
    • 基础Query.xaml 基础Query.xaml.cs:查询Tab
    • 基础List.xaml 基础List.xaml.cs:列表List
    • 基础Form.xaml 基础Form.xaml.cs:表单Form
  5. 框架最终通过ListForm实现功能,操作过程及原理请参见List和Form,这里不再赘述

  6. 将其他android iOS 或 wasm项目设置为启动项目,同样可运行单实体功能

一对多框架

  1. 该实例演示一对多父子表增删改查的功能

  2. Demo.Base项目中已生成表crud_父表 crud_大儿 crud_小儿的实体,参见生成实体代码

  3. 添加代码框架,右键选择搬运工 -> 一对多框架,设置如下图所示,注意红框的内容,父主键字段名可能不同,采用父子表单是不同的交互界面,点击确认,生成框架文件 /dt-docs/4%E5%AE%9E%E4%BD%93%E6%A1%86%E6%9E%B6/4%E9%80%9A%E7%94%A8%E6%A1%86%E6%9E%B6/8.png

  4. 编译生成、启动、添加菜单项一对多、菜单授权后,就可打开一对多窗口查看默认功能 /dt-docs/4%E5%AE%9E%E4%BD%93%E6%A1%86%E6%9E%B6/4%E9%80%9A%E7%94%A8%E6%A1%86%E6%9E%B6/9.gif

  5. 采用父子表单时,父Form会包含子列表,父子的增删改在一个事务中完成 /dt-docs/4%E5%AE%9E%E4%BD%93%E6%A1%86%E6%9E%B6/4%E9%80%9A%E7%94%A8%E6%A1%86%E6%9E%B6/10.gif

  6. 框架最终通过ListForm实现功能,操作过程及原理请参见List和Form,这里不再赘述

  7. 运行其他平台的App项目,打开一对多查看默认功能

多对多框架

  1. 该实例演示多对多关系表的增删改查功能,用户和角色、权限和角色、角色和用户及权限都是多对多关系,分别以用户、角色、权限为主体实现管理功能。

  2. Demo.Base项目中已生成表crud_角色 crud_用户 crud_权限 crud_角色权限 crud_用户角色的实体,参见生成实体代码

  3. 添加以角色为主体的代码框架,右键选择搬运工 -> 多对多框架,设置如下图所示,主实体点击选择crud_角色关联实体选择crud_用户 crud_权限中间实体选择crud_角色权限 crud_用户角色,完善中间实体的外键字段名,确保关联实体中间实体的表顺序对应,点击确认,生成框架文件 /dt-docs/4%E5%AE%9E%E4%BD%93%E6%A1%86%E6%9E%B6/4%E9%80%9A%E7%94%A8%E6%A1%86%E6%9E%B6/11.png

  4. 同样添加以权限为主体和以用户为主体的代码框架

  5. 编译生成、启动、添加三个菜单项(用户管理 角色管理 权限管理)、菜单授权后,切记更新缓存,重启应用即可测试这三个菜单项 /dt-docs/4%E5%AE%9E%E4%BD%93%E6%A1%86%E6%9E%B6/4%E9%80%9A%E7%94%A8%E6%A1%86%E6%9E%B6/12.png

信息
以上三种模式的代码框架最终通过ListForm实现功能,操作过程及原理请参见List和Form,这里不再赘述