EntityModel 系列之 设计器使用概述
写在前面
- 设计器下载 提取码: rpcq
- 因系统未实现自动保存,配置录入后,请及时点工具栏的保存,以防止丢失。
- 所有录入配置内容时,内容为空时的灰色文字表示默认值.
- 此处描述的是最基本的配置项及操作,请认真理解录入内容的作用。
- 如无法理解,请先按要求操作,并在不断尝试中体例
Step 1 新建一个解决方案
打开设计工具AgebullDesigner,菜单依次点文件-新建。在弹出的对话框正确选择设计器文件保存目录与解决方案文件名。
设计器文件均为Json数据格式。
保存目录应独立,不做其它用处,以防止文件混乱
Step 2 解决方案配置
左侧树形选择顶级
- 名称(设计时)
这是系统设计时的一个最基础信息,对照说明如下:
界面名称 | 内部名称 | 说明 |
---|---|---|
名称 | Name | 用英文表示的名称,直接用于代码,所以命名时注意符合C#命名规范 |
标题 | Caption | 用中文表示的名称,常用于界面的Label,也用于代码的注释(summary节点) |
标识 | Index | 用来做数字索引之用,可忽略 |
说明 | Description | 对象的解释性文字,常用于界面的Tooltip,也用于代码的注释(remark节点) |
1 当标题与名称相同时,标题会默认为名称且界面清除你的录入
2 当说明与标题相同时,说明会默认为标题且界面清除你的录入
3 后续除有含义不同,否则不再说明
- 代码生成根路径
名称 | 说明 |
---|---|
解决方案 | 后端代码生成的根路径,组合方式参见项目节中相关说明 |
代码文件夹 | 用于代码保存的文件夹 |
文档文件夹 | 用于生成文档(API文档,数据结构文件)的文件夹 |
管理页面 | 我们倡导前后端分离,故允许生成的前端代码与后端代码在完全不同的目录之下 |
- 全局默认
名称 | 说明 |
---|---|
命名空间 | 在项目未配置时,后端代码生成使用的 命名空间 |
主键类型 | 设计器默认的主键类型,默认为Int64即long |
用户标识数据类型 | 用于在强调用户标识的项目中,可忽略 |
Step 3 项目配置
左侧树形选择一个项目
在代码生成时,会对应到一个C#的Project
- 数据模型
名称 | 说明 |
---|---|
命名空间 | 如想使用与解决方案不同的命名空间,或解决方案未配置命名空间,则此处配置,命名空间必须有,否则生成的代码是错误的 |
引用的命名空间 | 如使用了其它类型而因为没有引用命名空间而编译出错,建议不要去修改代码,而在此处配置,以便最大程度的使用自动生成的代码 |
- 代码路径
名称 | 说明 | 默认 | 组合方式 |
---|---|---|---|
分类文件夹 | 如你的Project相对解决方案的代码目录要通过目录区分,可以设置 | 无 | |
模型文件夹 | 生成模型相关代码(Entity、DataAccess、Business)的文件夹 | Model | 解决方案根路径 + 分类文件夹 + 模型文件夹 |
接口文件夹 | 生成Api相关代码的文件夹 | Api | 解决方案根路径 + 文档文件夹 + 分类文件夹 + 接口文件夹 |
页面文件夹 | 生成前端代码的文件夹 | 与项目名称相同 | 解决方案管理页面 + 页面文件夹 |
可通过录入内容观察目录变化来熟悉代码生成的路径规则
- 数据库
名称 | 说明 | 注解 |
---|---|---|
数据库类型 | 实际使用的数据库类型 | 必须正确选择,否则生成的代码不是你想要的 |
数据对象名称 | 生成的Database对象的类名 | 建议命名为 [项目的名称]Db且不与其它项目相同 |
Step 4 新建一个实体
选择项目后,点工具栏 增加实体
- 基本信息
界面名称 | 说明 |
---|---|
名称 | 用英文表示的名称,直接用于代码,所以命名时注意符合C#命名规范 |
标题 | 用中文表示的名称,常用于界面的Label,也用于代码的注释(summary节点) |
分类 | 为防止实体过多而界面混乱,可在此填写分类的名称(Name),这时实体就会在树形中显示在对应类别下 |
说明 | 对象的解释性文字,常用于界面的Tooltip,也用于代码的注释(remark节点) |
1 当标题与名称相同时,标题会默认为名称且界面清除你的录入
2 当说明与标题相同时,说明会默认为标题且界面清除你的录入
- 文本快速处理
通过输入文本来快速构建实体的字段
系统接收的文本格式
每个字段一行,空行会自动跳过
每个一部分用逗号分开
序号 | 内容 | 必须 | 默认 | 说明 |
---|---|---|---|---|
1 | 名称 | 是 | 用英文表示的名称,直接用于代码,所以命名时注意符合C#命名规范 | |
2 | 数据类型与特殊标记 | 否 | string | 数据类型请使用C#中的类型,特殊标记可不填写 |
3 | 标题 | 否 | 无 | 用中文表示的名称,常用于界面的Label,也用于代码的注释(summary节点) |
4 | 说明 | 否 | 无 | 对象的解释性文字,常用于界面的Tooltip,也用于代码的注释(remark节点) |
数据类型缩写 l=long i=int s=string b=bool d=decimal
标记 | 说明 |
---|---|
@ | 表示这个字段为自增字段 ,数据库中同义,生成的代码只读不写 |
# | 数据库的表中非空 |
! | 输入非空 |
[] | 数组 |
- | 数字长度,连续第二个则为精度 |
其它说明
- 每行为一条数据,空行会自动跳过
- 其它格式,先点对应的按钮转换为系统接收的格式
转换后请检查是否正确,如有错误,请手动修改
- 点分析文本后会自动解析成对应的字段
请认真对照分析后的内容是否与你要的相同,如不同,可在表格中直接修改,也可以修改文本后再次分析
- 多次点分析文本,只接收最后一次
以上步骤完成后,请点确认。直接关闭或点取消,以上操作将丢失。
回到主界面后,依次展开项目下的实体,你录入的分类,就可以看到你增加的实体。
建议此时点一次保存,防止数据丢失。
Step 5 数据库建表
操作: 选择实体,点菜单 设计-数据库设计,点对象设计按钮,在右侧选项卡中选择数据库设计
- 配置
建立实体时,系统未构建默认的表名,此时你可以:
- 手工录入或修改内容(不建议)
- 点菜单:数据库-重构数据库设计(建议),自动会生成与构建内容
注意: 很多操作如果选择的是分类或项目,会影响到其下的所有实体,所以尽量选择单个实体后进行再执行对应操作。
- 如未使用视图,此时读与写是在同一个表,读取表名可不填。
- 检查字段的配置是否与你的需求相同,如不同,请修改之
- 生成表代码
点按钮“代码生成”,在选项卡中选择“代码片断”,选择SqlServer或MySql,选择"生成表",此时右侧会出现代码,点“复制代码”,代码进入剪贴板,可粘贴到你想要的地方执行之。
当你离线或网络不好时,代码窗口可能显示不正确或有比较长时间的白色,但不影响复制代码。
- 生成实体代码
点"Entity & Model",代码会以文件形式写入项目对应的目录。
如想确认代码生成的路径,可点按钮"跟踪消息",在日志中查看生成的文件写入详情.
通过VS打开之前建立的Solution(C#解决方案),检查代码是否可直接编译通过。如生成的代码有错,请认真检查直到生成的代码编译通过。
Solution的基本信息参见:EntityModel 系列之 C#项目概述