首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

代码生成新选择-T4模板引擎

在博客堂看到ASP.NET MVC中的T4模板, 之前我也写过一篇文本模板转换工具箱T4。...而且模板也很少,MSDN上甚至没有一个专门的目录用来介绍它,惟一沾边的就是在介绍DSL工具时带上的Generating Artifacts By Using Text Templates。...Visual Web Developer项目组的博客上有一个对ASP.NET MVC中T4模板进行深度探索的帖子:T4模板,给ASP.NET MVC开发者的快速使用指南。...其中提到已经有了T4 Toolbox这样的模板库插件,而且也有了Clarius Consulting的T4 Editor这样的商业编辑工具,他们也提供了社区版本,但编写复杂的T4模板依然是一件麻烦而且要求挺高的事情...T4模板不仅仅应用在ASP.NET MVC里了,它可以应用于代码生成的所有领域,只是T4的资料太少了。我在社区里建了一个小组T4模板引擎,欢迎大家一起来整理T4的资料。

92550

文本模板转换工具箱T4

Visual Studio 2008包含了一个文本模板转换工具箱,又称为T4,是领域特定语言工具的一部分,并可用于基于文本模板的方式来生成代码。 一个文本模板是一个包含文本块和控制逻辑混合物的文件。...当你转换一个文本模板,控制逻辑结合了文本块与模型里的数据来生成一个输出文件。你可以用文本模板来生成文本的输出,例如代码文件和HTML报表。...举个例子,用户界面的页面之间的流程控制的模型,例如向导界面,可以通过输入一个文本模板。文本模板可以生成流程控制的代码和配置文件。...现在T4 将来到MonoDevelop上,MonoDevelop也是通过T4来支持ASP.NET MVC, 也就是Mono版的T4,参看Mono's Text Template Transformation...Toolkit (T4)。

63090

ASP.NET MVC5+EF6+EasyUI 后台管理系统(29)-T4模版

为了替代重复的劳动,微软自己有一套T4模版,我不想把T4模版说得那么的复杂,因为这个复杂我自己也不知道。...T4代码模式是没有颜色高亮了,但是我们的VS支持插件 T4 Editor 下载安装之后就可以跟我们写C#一样有智能高亮和提示了。 新建一个项目,专门用于T4的存放。 ?...模板自动生成 // 生成时间 by YmNets // 对此文件的更改可能会导致不正确的行为...模板自动生成 // 生成时间 by YmNets // 对此文件的更改可能会导致不正确的行为...模板自动生成 // 生成时间 2014-03-03 17:34:45 by YmNets // 对此文件的更改可能会导致不正确的行为,并且如果 // 重新生成代码,这些更改将会丢失

1.2K70

解决T4模板的程序集引用的五种方案

在众多.NET应用下的代码生成方案中,比如CodeDOM,BuildProvider, 我觉得T4是最好的一种。关于T4的基本概念和模板结果,可以参考我的文章《基于T4的代码生成方式》。...如果要了解T4具体的应用,则可以参考我的文章《创建代码生成器可以很简单:如何通过T4模板生成代码?》(上篇)(下篇)。如果你编写T4模板,你不得不面对一个问题——如何引用一个程序集?...模板需要调用一个自定义的类型,并且该类型定义在某个非系统程序集中,你就需要通过T4指令引用该程序集。...比如,下面的T4模板包含了对程序集Artech.T4AssemblyRefResovle.Foo.dll的引用。...有一点需要注意的是,T4模板引用某个安装于GAC的程序集的时候,在指令下不能指定文件扩展名(.dll)。T4模板应该按照如下的方式定义。

77770

2020-3-3-使用T4模板进行C#代码生成

有过前端开发经验的同学一定了解模板文件的重要用户。其实C#也有类似的模板功能(T4模板),不仅可以生成html文件,还可以生成代码。今天就给大家介绍一下。...---- 什么是T4模板 T4模板全称是Text Template Transformation Toolkit,因为四个单词的开头字母都是T,所以称作T4模板。...T4模板是一种支持C#或者VB代码开发的模板格式,已经在Visual Studio,MonoDevelop,Rider这些主流IDE中得到支持。...使用visualstudio创建一个T4模板 我们在项目上右键选择添加新项,在弹出的界面中搜索T4,可以得到两个结果。分别是文本模板(设计时T4模板)和运行时文本模板(运行时T4模板)。...More 至此相信你已经可以使用T4模板完成基本的代码生成功能开发了。当然本文作为入门介绍还有很多细节没有介绍。

2.6K10

Entity Framework学习笔记——edmx文件

//blog.csdn.net/huyuyang6688/article/details/41627669            上文简单介绍了一下Entity FrameWork,这里说一下EF...7、一切都完成后,如下图,edmx就已经根据我们所选的数据库表生成了相应的实体,同时,在解决方案资源管理器中的T4模板Model.tt下还为自动我们生成了Department和Employee实体类。...上文第七步说到,生成edmx模板的同时,跟实体相对应的两个类Employee和Department也生成了,在实体类的父节点,还有一个Model.tt,这就是T4模板,看了下面这一段T4模板中的代码,就会理解...,其实这两个实体类是T4模板根据edmx配置文件生成的。...(用VisualStudio查看T4模板时代码会很混乱,因此可以安装一个T4 Editor的插件再进行T4模板代码的学习,插件下载地址:点击跳转) <#@ include file="<em>EF</em>.Utility.CS.ttinclude

1.5K30

创建代码生成器可以很简单:如何通过T4模板生成代码?

在《基于T4的代码生成方式》中,我对T4模板的组成结构、语法,以及T4引擎的工作原理进行了大体的介绍,并且编写了一个T4模板实现了如何将一个XML转变成C#代码。...的T4模板文件包含进来。...下面提供的T4模板的编辑工作依赖于这个工具。 为了提高编程体验,比如智能感知以及代码配色,我们还可以安装一些第三方的T4编辑器。我使用的是一个叫做Oleg Sych的T4 Editor。...成功按装了,它也会在Add New Item”对话框中提供相应的基于T4 的文件模板。 三、创建数据表 T4模板就是输入和输出的一个适配器,这与XSLT的作用比较类似。...[上篇] 创建代码生成器可以很简单:如何通过T4模板生成代码?[下篇]

3.4K90

创建代码生成器可以很简单:如何通过T4模板生成代码?

在《上篇》中我们通过T4模板为我们指定的数据表成功生成了我们需要的用于添加、修改和删除操作的存储过程。但是这是一种基于单个文件的解决方案,即我们必须为每一个生成的存储过程建立一个模板。...同样对于《上篇》创建的数据表T_PRODUCT,之前我们为了生成三个不同的存储过程,我们不得已需要创建3个不同的T4模板文件。...由于我们将要创建的T4模板将会使用到这四个类,如果我们用四个指令将四个TT文件包含过来,由于T4引擎将会导致对ProcedureTemplate的4次包含,最好将会导致变异问题。...下面是基于但表的T4模板。...[上篇] 创建代码生成器可以很简单:如何通过T4模板生成代码?[下篇]

853110

EF简介

EF:EF是 asp.net的一套ORM框架....一、当添加完EF实体之后: 1、系统会自动生成一个(对应ef模块名.content.tt文件),  这个模版是帮助我们生成ef访问上下文的,里面有一个数据库实体,上面这个例子是TestEntities实体...2、系统还会生成一个(对应ef模块名.tt文件),这个模版是帮助我们生成一个数据库对应的表实体. 3、另外需要注意一点,系统还会生成一个(对应ef模块名.Designer.cs文件)这个文件在ef4.0...之后里面是没有代码的,但是在ef4.0的时候是有的,那个时候里面存放的是数据库上下文和数据库对应的表实体,如果你需要使这个(对应ef模块名.Designer.cs文件)文件里面的文件重现,你只需要找到对应的数据库模型...2、 //利用EF像数据库中添加一条数据 //first step:创建访问数据库的统一入口.创建EF的上下文 TestEntities dbContext

1.4K80

EF原理

EF简介 实体框架(Entity Framework)简称EF,是微软以ADO.NET为基础所发展出来的对象关系对应(O/R Mapping)解决方案。...ORM O/R Mapping 是EF中非常重要的一个思想,官方解释为:ORM指的是面向对象的对象模型和关系型数据库的结构之间的相互转换。...上图也很好的解释了EF的工作原理,我们所做的增删改查操作通过ObjectContext上下文传到ORM,通过实体的变化映射到关系表,从而实现对数据库的操作。...那么在EF中是如何实现对数据的增删改查呢?...2.Model First 是先利用某些工具(如VS的EF设计器)设计出可视化的实体数据模型及他们之间的关系,然后再根据这些实体、关系去生成数据库对象及相关代码文件。

71310
领券