主键:
每个需要生成CRUD操作的表都需要主键,必须为表创建主键以生成相应的代码。
数据操作对象中将生成基本数据操作方法
Get:通过使用表中定义的主键获取行数据对象,使用EntityKeyBase的一个实例对象
GetAll:获取所有的行数据对象
GetPaged:根据分页信息获取数据对象
GetTotalItems 根据条件获取数据对象数量
Insert:插入对象到数据库
Update:更新对象到数据库
Delete:从数据库中删除对象
Save:使用对象的自身状态信息,调用相应的方法保存对象(包括插入,更新,删除)
DeepLoad:加载对象及其关联的对象,可设置需要额外加载的属性
DeepSave:保存对象及其相关联的对象
BulkInsert:批量插入对象数据
Find:查询,具有单表查询的能力
单一主键:会生成如 [GetBy主键]的方法获取行数据对象
复合主键:会为每个主键列生成如 [GetBy主键列]的方法,同时会生成一个通过多个主键获取行数据对象的方法 [GetBy主键A主键B]
外键:
要生成对象之间的关系,须创建外键,模板根据外键创建对象之间的关系
一对多关系
外键的主键表对象:会创建外键表对象的列表(一对多关系)
外键所在表:会创建引用外键的对象(一对多关系)
同时:数据操作对象会生成GetBy[外键]的方法获取行数据对象
多对多关系
外键的主键表对象:会创建外键表对象的列表
同时:数据操作对象会生成使用该关系表获取对象的方法 Get
索引:
模板会根据数据库索引创建数据获取方法,创建方法同主键(主键自动创建索引)创建的方法 GetBy索引
当我们想要生成根据某个字段获取数据的方法时用到(通常未使用外键的标识,标记等字段需要使用)
自定义存储过程:
模板使用一格式判断自定义存储过程是否需要生成在相应的数据操作对象中,格式在nettiers模板配置节 CRUD的customProcedureStartWith定义,默认为_{0}_,参数为表名,符合规则的存储过程将生成在该表对应的数据操作对象中
如存储过程无返回数据集,则返回类型为void
如存储过程有返回数据集且数据集类型(列的数量,列的名称)和表结构一致,则返回该表对应的实体类型,否则返回DATASET
枚举:
某些字典表数据可能不被系统维护且和程序密切相关,常有的如状态字典表,而在程序中又会有使用该字典表数据的时候,我们可以为该字典表生成枚举类型,如须使用枚举类型,表应符合如下规则:
第一个字段 ,整形类型,惟一主键
第二个字段,字符串类型,惟一索引
模板中要选择将该表生成为枚举,配置节01b的enumTables需选择该表
枚举类型表需在系统设计初期对字典表做合理的设计
可空类型:
任意可空列,除引用类型外(string),在实体中会生成可空类型 如INT? ,所以在数据库设计时最好明确定义数据列是否可为空,可减少设计导致的逻辑编码错误的出现。