说到开发效率的提高,代码生成器肯定是其中必不可少的重点。
说到代码生成器,鼎鼎大名CodeSmith肯定是如雷贯耳。

CodeSmith最大的特点是能够自定义模板
(通俗的说就是想生成什么样就可以生成什么样子,全部由自己自定义)

CodeSmith相关资料
CodeSmith官方网站:http://www.codesmithtools.com/
CodeSmith5.0.1破解版下载:http://kewlshare.com/dl/0538fcf454d3/CodeSmith.5.0.Professional.Incl.Patch.DTCG.rar.html

大家安装好以后,我们正式开始接触CodeSmith

首先运行程序

运行后,看看右上角的【Template Explorer】模板浏览器
 
发现里面有很多cst文件,这就是CodeSmith中最核心的内容:模板
(其实自带的模板还是比较全的,NetTiers、Linq To SQL、NHibernate……)

虽然模板比较全,但俗话说“适合自己的才是最好的”,那么我们接下来就来创建自己的第一个模板吧!

自从由Brian Kernighan和Dennis Ritchie编写《C编程语言》以来,书中的“Hello World”就成为任何一种语言的第一个程序。
(呵呵,这已经成为一种珍贵的传统了,希望好的传统能够一直延续下去……我们当然也应该延续这种传统)

1、新建模板

(模板的编写支持各种语言,当然还是选择我们最熟悉的C#)

2、去掉默认的所有内容,保存模板为Hello.cst文件

3、添加模板声明

<%@ CodeTemplate Language="C#" ResponseEncoding="UTF-8" Description="第一个模板"%>

和所有的程序一样,第一行为当前模板的声明。
Language:编写当前模板的语言
ResponseEncoding:输出的编码格式
Description:当前模板的描述

4、添加输出的内容

<%@ CodeTemplate Language="C#" ResponseEncoding="UTF-8" Description="第一个模板"%>
Hello World
<%=DateTime.Now.ToLongDateString()%>

其实模板和ASPX页面差不多,中间可以直接写内容,也可以通过<%=%>输出变量或系统内容

5、运行模板

显示结果为:
Hello World
2008年10月18日 星期六

好了,第一个模板已经成功创建了,在下一次将会跟大家介绍怎么实现外部输入参数,谢谢!

初次接触CodeSmith的更多相关文章

  1. 初次接触json...

    这两天发现很多网站显示图片版块都用了瀑布流模式布局的:随着页面滚动条向下滚动,这种布局还会不断加载数据并附加至当前尾部.身为一个菜鸟级的程序员,而且以后可能会经常与网站打交道,我觉得我还是很有必要去尝 ...

  2. 初次接触GWT,知识点总括

    初次接触GWT,知识点概括 前言 本人最近开始研究 GWT(Google Web Toolkit) ,现将个人的一点心得贴出来,希望对刚开始接触 GWT的程序员们有所帮助,也欢迎讨论,共同进步. 先说 ...

  3. [Docker]初次接触

    Docker 初次接触 近期看了不少docker介绍性文章,也听了不少公开课,于是今天去官网逛了逛,发现了一个交互式的小教程于是决定跟着学习下. 仅仅是把认为重点的知识记录下来,不是非常系统的学习和笔 ...

  4. 初次接触:DirectDraw

    第六章 初次接触:DirectDraw 本章,你将初次接触DirectX中最重要的组件:DirectDraw.DirectDraw可能是DirectX中最强大的技术,因为其贯穿着2D图形绘制同时其帧缓 ...

  5. 初次接触scrapy框架

    初次接触这个框架,先订个小目标,抓取QQ首页,然后存入记事本. 安装框架(http://scrapy-chs.readthedocs.io/zh_CN/0.24/intro/install.html) ...

  6. javaweb中的乱码问题(初次接触时写)

    javaweb中的乱码问题 在初次接触javaweb中就遇到了乱码问题,下面是我遇到这些问题的解决办法 1. 页面乱码(jsp) 1. 在页面最前方加上 <%@ page language=&q ...

  7. 初次接触Java

    今天初次接触Eclipse,学着用他来建立java工程,话不多说,来看看今天的成果! 熟悉自己手中的开发工具,热热身 刚上手别慌,有问题找度娘 刚刚拿到这个软件的安装包我是一脸懵逼的,因为是从官网下载 ...

  8. -1.记libgdx初次接触

    学习一门技术最难的是开发环境变量配置和工具配置,以下为我初次接触libgdx时遇到的问题 几个难点记录下 gradle 直接用下到本地,然后放到d盘,链接到就行(gradle-wrapper.prop ...

  9. tensorflow初次接触记录,我用python写的tensorflow第一个模型

    tensorflow初次接触记录,我用python写的tensorflow第一个模型 刚用python写的tensorflow机器学习代码,训练60000张手写文字图片,多层神经网络学习拟合17000 ...

随机推荐

  1. VMware 命令行下安装以及导入Ubuntu系统

    前提: 鉴于个人PC性能太弱,考虑是否可以将在PC上搭建好的环境移植到高性能服务器上.想到后就干呗. 下载完对应操作系统的安装包后按如下步骤操作: 安装包名称:VMware-Workstation-F ...

  2. Google软件测试

    google测试相关的职位有三类:软件测试开发工程师.测试工程师以及测试工程经理. 软件测试开发工程师也是一个开发角色,只是工作重心在可测试性和通用测试框架上.他们参与设计评审,非常近距离地观察代码质 ...

  3. 如何创建Asp.net MVC ViewModel

    ASP.NET MVC View Model Patterns Since MVC has been released I have observed much confusion about how ...

  4. Uva 10007 / HDU 1131 - Count the Trees (卡特兰数)

     Count the Trees  Another common social inability is known as ACM (Abnormally Compulsive Meditation) ...

  5. 麒麟OS剽窃

    今年对于我们的IT行业来说可以算是耻辱的一年. 首先是“汉芯丑闻”,上海交大研制了一个所谓的国内第一个完全拥有自主知识产 权的DSP芯片(数字信号微处理器)——“汉芯”,研制人陈进教授以此领取政府一亿 ...

  6. php--opp--1.什么是面向对象?

    面向对象编程(Object Oriented Programming, OOP, 面向对象程序设计)是一种计算机编程架构,OOP的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成 ...

  7. UVALive 5880 Vigenère Cipher Encryption (模拟)

    Stack Machine Executor 题目链接: http://acm.hust.edu.cn/vjudge/problem/26628 Description http://7xjob4.c ...

  8. netdata linux环境下的安装

    据说netdata监控很个性化,采用的显示方式也很漂亮,就来尝试安装.百度搜索到的安装教程的斑斑是1.0.顺藤摸瓜去wiki看了看,已经更新为1.4了,果断走起: 下载地址::https://gith ...

  9. Python基础-函数(function)

    这里我们看看Python中函数定义的语法,函数的局部变量,函数的参数,Python中函数的形参可以有默认值,参数的传递是赋值操作,在函数调用时,可以对实参进行打包和解包  1,函数定义 关键字def引 ...

  10. js set

    function ff(){ var sArray = ['a','b','b','b','b','b','d','b']; var iSet = {}; for(var i=0;i<sArra ...