agilelabs-fx-docs main topics/database-naming.md

数据库命名

本页是数据库对象、实体类、DbContext、Repository、DTO 与 Profile 的主题页。正式规则请优先阅读 框架规范 / 命名与数据转换规范

适用场景

  • PostgreSQL 数据库对象命名。
  • 遗留 EF Core 实体与配置类命名。
  • Repository、DTO、Profile 命名。

必须遵守

  • 数据库对象统一使用小写下划线风格。
  • 代码对象统一使用 PascalCase。
  • 如果项目仍保留 EF Core,一个业务库只保留一个默认 DbContext,名称直接表达业务域。
  • 实体类名使用领域语义,不混入表前缀或技术后缀。
  • Repository 名称表达访问对象或业务目的。
  • 审计字段命名保持统一,例如 create_timeupdate_timecreated_byupdated_byts
  • 同一概念在数据库、实体、DTO、API 返回里保持同一根词。

推荐做法

  • 同一概念在数据库、实体、DTO、API 返回里保持同一根词。
  • 并发版本字段与展示时间字段分开命名。
  • 避免一个概念在不同层分别叫不同业务名。
  • 复杂业务系统在建库前先统一命名词典,避免后期跨模块漂移。

常见坑

  • 表名写成 PascalCase 或带前缀。
  • 一个概念在数据库、实体、DTO 中三套命名。
  • 使用 DataHelperInfoManager 之类模糊类名。
  • 同时混用 gmt_createcreate_timecreated_at 三种时间字段风格。

真实用例

  • gmandarin-backend:复杂业务下命名边界更重要。
  • woscm:公共层越多,命名一致性越重要。

相关页面