我是靠谱客的博主 内向山水,最近开发中收集的这篇文章主要介绍使用T4模板根据数据库生成model层,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

使用T4模板根据数据库生成model层

为了实现由数据库中的table表直接生成model文件

T4模板介绍

​ 学习EF时接触到T4模板,感觉到了它的强大。既然EF的edmx文件下的**tt文件可以生成model层的cs文件**,那么我们也可以直接用T4模板生成model层喽。当然T4可以做更多事,不过今日我们只让它做这一件事。

​ T4,即4个T开头的英文字母组合:Text Template Transformation Toolkit。简单来说就是**自定义规则代码生成文件**。T4模板因其扩展名为“.tt”又叫做tt模板。
T4模板里面可以在<##>里面写入代码而达到类似aspx页面动态输出效果。
T4内的一些类和方法我们不再深究。

通过数据库模式中的 T4 模板的数据库优先方法(仅限于 SQL Server)

​ 可以通过安装 NuGet 包Dapper.FastCrud.ModelGenerator创建您自己的 ( *Config.tt) 文件来执行实体生成,这些文件使用此包中提供的通用模板。使用示例配置模板获取灵感。

不要修改GenericModelGenerator.tt,因为这将阻止将来通过 NuGet 进行升级。对于这种方法,您需要一个包含架构的 LocalDb 或 MsSql 服务器。默认情况下,脚本会在app.config文件中查找连接字符串,但我们强烈建议您创建一个单独的.config文件并相应地调整您的文件*Config.tt

例如,假设我们想要一个类库项目来保存我们的数据库实体。

  • 创建一个新的类库项目
  • Dapper.FastCrud.ModelGenerator包安装到您的项目中。这将创建一个名为 的文件夹Models,其中包含一个GenericModelGenerator.tt文件和一个SampleModelGeneratorConfig.tt文件。
  • SampleModelGeneratorConfig.tt制作配置文件的副本。根据需要重命名。假设我们已命名它MyModelGeneratorConfig.tt并将其放置在与示例配置文件相同的位置。确保复制的文件已BuildAction设置为None并在该文件的属性中CustomTool设置为 。TextTemplatingFileGenerator(可通过程序中的选项来设置)
  • 删除文件的属性TextTemplatingFileGenerator值。这只是一个示例,我们不希望它处于活动状态。Custom Tool``SampleModelGeneratorConfig.tt
  • 通过IDEApplication Configuration File的. 假设我们将其命名为。打开它并在其部分添加一个新的连接字符串,就像在常规或文件中所做的一样。Models``Add New Item``MyModels.config``configuration``app.config``web.config(与t4文件同文件夹中)

注意:我们自己写的TextTemplate.tt中的连接字符串ConnectionStringName = “EntityGeneration”; 对应的是MyModels.config中的中的name

最后

以上就是内向山水为你收集整理的使用T4模板根据数据库生成model层的全部内容,希望文章能够帮你解决使用T4模板根据数据库生成model层所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(58)

评论列表共有 0 条评论

立即
投稿
返回
顶部