【发布时间】:2014-01-16 09:24:43
【问题描述】:
在 Visual Studio 中,使用实体框架并为 .tt 和 .Context.tt 文件应用运行自定义工具时,它是什么以及它有什么作用?
为什么它解决了数据库同步问题(有时)?为什么我应该先为 (.tt) 运行它,然后再为 (.Context.tt) 运行它?
【问题讨论】:
标签: c# asp.net visual-studio entity-framework entity-framework-5
在 Visual Studio 中,使用实体框架并为 .tt 和 .Context.tt 文件应用运行自定义工具时,它是什么以及它有什么作用?
为什么它解决了数据库同步问题(有时)?为什么我应该先为 (.tt) 运行它,然后再为 (.Context.tt) 运行它?
【问题讨论】:
标签: c# asp.net visual-studio entity-framework entity-framework-5
它被称为“文本模板转换工具包”,您可以使用它从元描述中创建类(例如)。 EF 使用它从模型中创建类(上下文和实体类)。
你也可以看看http://en.wikipedia.org/wiki/Text_Template_Transformation_Toolkit
您可以创建自己的模板并让它们运行。我们用它来创建一次数据库表的枚举。比手动操作更方便。后来因为 EF 获得了对枚举的支持而被弃用。
【讨论】:
文本模板转换工具包(通常称为“T4”)被开发人员用作应用程序或工具框架的一部分,以自动创建具有各种参数的文本文件。这些文本文件最终可以是任何文本格式,例如代码(例如 C# 并专门生成 ADO 和汇编文件)。 当我们从数据库更新我们的模型时,T4 会生成那些需要的文件,但有时它不会。这可能是因为 VS 版本或我们的错误。 所以现在我们需要生成ADO、Assembly等需要的依赖类和文件,才能无误地运行项目。
因此,在 .tt 和 .context.tt 上运行自定义工具选项为我们提供了生成这些文件的选项。
【讨论】: