内容目录
t4 模板文件
第一步,在项目中设置 t4 模板文件。
不知道 T4 模板的,可以自行查阅资料或查看 https://learn.microsoft.com/zh-cn/visualstudio/modeling/code-generation-and-t4-text-templates?view=vs-2022
可以使用工具生成两个模板文件。
安装模板工具:
dotnet new install Microsoft.EntityFrameworkCore.Templates
然后到项目下面执行命令创建模板文件:
dotnet new ef-templates
执行命令后会生成:
├─CodeTemplates
│ └─EFCore
│ DbContext.t4
│ EntityType.t4
目录结构一定要这样设计,除了这两个文件外,还可以添加其它模板文件。
请参考第三方的模板文件:https://github.com/R4ND3LL/EntityFrameworkRuler/tree/main/src/EntityFrameworkRuler.Design/Resources
执行命令生成代码
执行命令从数据库生成代码:
dotnet ef dbcontext scaffold "server=127.0.0.1;Database=aaa;Uid=root;Pwd=123456;" Pomelo.EntityFrameworkCore.MySql --context AAAContext --context-dir Data --output-dir Entities -f
改进 OnModelCreating
如果数据库表很多,那么上下文文件的 OnModelCreating 方法中会有大量的配置代码,非常影响阅读。我们可以使用 t4 模板将这些配置分发到具体的 EntityTypeConfiguration 文件中。
重新执行生成命令:
所有配置会自动分发到具体的文件中。
文章评论