T4代码生成器

最近用MVC时业务上需要新增不同类型的视图页面,实际上页面排版什么的都差不多,只是内容有所不同,但是不能使用同一个视图。

想到了用T4代码生成器完成,之前就有听说过这个好东西,但是一直没有深入研究。借此研究了下;

1、通过在Nuget上查找Mvc5CodeTemplatesCSharp,将该包下载到项目上(我的项目是Mvc5,你可以根据你自己的mvc版本下载对应的包)

下载成功后会在你的站点里新建一个CodeTemplates文件夹,里面有很多子文件夹且有很多后缀名以t4结尾的文件,如图:

在MvcView文件加下新建一个复制一个Create.cs.t4 重命名为NewCreate.cs.t4

添加一个视图,查看是否可以使用这个自定义的T4模板,如下图:

时间: 2024-10-13 00:58:48

T4代码生成器的相关文章

【开源.NET】 分享一个前后端分离的轻量级内容管理框架

开发框架要考虑的面太多了:安全.稳定.性能.效率.扩展.整洁,还要经得起实践的考验,从零开发一个可用的框架,是很耗时费神的工作.网上很多开源的框架,为何还要自己开发?我是基于以下两点: 没找到合适的:安全.稳定.简单.易用.高效.免费: 想成为架构师: 于是就自己动手,参考网上开源的项目和借鉴网友的设计思路(特别是萧秦系列博文),结合自己的实践,开发了一个简单.易用.高效的的框架,虽然不完善,但也能解决现实中的问题.不过随着见识增广,发现没负责过千万级别的项目难以成为架构师,也不可能开发出一个完

权限工作流平台系列-基础权限版

一.基础权限版介绍:联系作者   1039318332        1.基础权限版地址:http://www.eipflow.com:9998/Account/Login   或者通过http://www.eipflow.com也可进入 2.开发工具:Vs2017+SqlServer 2008R2 及以上版本 3.系统采用前后端分离模式开发,后端使用最新的Core2框架,使用MongoDb作为缓存工具,前端使用Adminlte框架进行二次开发,可自由换肤,自己进行扩展       4.系统设计

自己动手搭建经典的3层 Asp.Net MVC

1:IBaseDAL 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Linq.Expressions; 5 using System.Text; 6 using System.Threading.Tasks; 7 8 namespace C01.ZRF.IDAL 9 { 10 public interface IBaseDAL<T> where T : class

一个简单的代码生成器(T4文本模板运用)

说要写这篇文章有一段时间了,但因为最近各方面的压力导致心情十二分的不好,下班后往往都洗洗睡了.今天痛定思痛,终于把这件拖了很久的事做了.好,不废话了,现在看看"一个简单的代码生成器" . 先看看界面吧! 简约到如此,说是代码生成器,估计是要被吐槽的.好吧,借用园子里博友的说法,这只是一粒粟子,如果你愿意,你能看到代码生成器的"种子". 这样运行的! 画了个简图已描述这个简单的代码生成器的工作过程.下面的介绍将以此图展开: 1)读取数据表的信息:从数据库中读取数据表的

T4模板——一个神奇的代码生成器

利用T4模板,可以很方便的从数据库映射成Model模型,相当于动软等功效.但动软是可以直接生成三层,抽象工厂的,T4没那么牛叉,所以我们一般只用作生成Modle或者Server等指定方法了. 废话少说,切入正题: 下面我将讲解的有两部分,一部分是根据T4将方法属性等生成到一个类里面,另一个是分配生成到不同类里面. 一.根据T4将方法生成到一个类里面 代码如下: Customers.tt <#@ assembly name="System.Core.dll" #> <#

代码生成器(CodeBuilder) 2 正式发布

CodeBuilder是一个通过获取数据库表和字段定义,通过模板转换生成三层结构.实体模型等代码的工具. 以其他同类的代码生成器相比,CodeBuilder具有以下几个不凡的特性: 多数据源 支持 SqlServer.Oracle.MySQL.SQLite.PostgreSQL.Firebird,或 OleDb 提供的驱动,而是还可以使用 Power Designer 文档. 如果以上这些无法满足你,那么你可以自己动手,做到自己满意为止. 架构可扩展 表和字段的属性可以通过代码文件来扩展,模板中

【转】T4模版引擎之基础入门

额,T4好陌生的名字,和NuGet一样很悲催,不为世人所熟知,却又在背后默默无闻的奉献着,直到现在我们项目组的人除了我之外,其它人还是对其豪无兴趣,基本上是连看一眼都懒得看,可怜的娃啊... T4(Text Template Transformation Toolkit)是微软官方在VisualStudio 2008中开始使用的代码生成引擎.在 Visual Studio 中,“T4 文本模板”是由一些文本块和控制逻辑组成的混合模板,它可以生成文本文件. 在 Visual C# 或 Visual

基于T4模板的文档生成

看了好几个代码自动生成的工具,用起来很方便,但有些方面还是不够自由:这些日子里忙里偷闲摸索了一番,个人觉的基于T4模板的代码生成方案还是不错的. 下面就看看这个T4到底是什么东东-- T4 = Text Template Transformation Toolkit 不知道电脑前的你是否接触过Asp或jsp之类的动态网页编程语言,个人感觉就和那些动态网页的的编写思路差不多只不过那些编译前是*.asp.*.aspx,或*.jsp,这个T4编译前是的扩展名是tt(*.tt) 先看一个简单的tt文件

T4模板

T4,即4个T开头的英文字母组合:Text Template Transformation Toolkit. T4文本模板,即一种自定义规则的代码生成器.根据业务模型可生成任何形式的文本文件或供程序调用的字符串.(模型以适合于应用程序域的形式包含信息,并且可以在应用程序的生存期更改) VS本身只提供一套基于T4引擎的代码生成的执行环境,由下面程序集构成: Microsoft.VisualStudio.TextTemplating.10.0.dll Microsoft.VisualStudio.T