说到开发效率的提高,代码生成器肯定是其中必不可少的重点。
说到代码生成器,鼎鼎大名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. HTML5_画布_太阳系

    HTML5_画布_太阳系 一.canvas属性和方法的简单介绍①对于不支持canvas标签的浏览器需要显示"不支持canvas"使用IE11浏览器的开发人员工具,仿真:文档模式=8 ...

  2. offer--链表反转和从尾到头打印链表

    这个是高频的面试题,今天总结了一些.反转链表用三个指针实现,返回新链表的头节点:而从尾到头打印,应用栈实现,返回vector整个链表. //题目描述 // //输入一个链表,反转链表后,输出链表的所有 ...

  3. ps做gif love教程(转)

    先看看效果吧: 这是在写部教程的时候,看到一个由方格组成的心.于是试着用PS做成了动画,然后加入了LOVE四个字母,看起来还可以.但是,有些复杂.复杂倒不是技术上的复杂,是做起来复杂. 来试试吧. 1 ...

  4. debug 64bit dump of a 32bit process in windows 7 64bit

    In Windows 7 the TaskMgr provides one easy way to create dump for the applications. You can right cl ...

  5. 轻松学习Linux之VI编辑器的使用

    本文出自 "李晨光原创技术博客" 博客,谢绝转载!

  6. UVALive 3959 Rectangular Polygons (排序贪心)

    Rectangular Polygons 题目链接: http://acm.hust.edu.cn/vjudge/contest/129733#problem/G Description In thi ...

  7. ESB 客户端调用 处理类

    esb package com.isoftstone.synchronize.entrance; import java.io.File; import java.text.SimpleDateFor ...

  8. java 常用concurrent类

    1.CountDownLatch 它的作用主要是当多个(数量等于初始化CountDownLatch时count参数的值)线程到达了预期状态或完成预期工作时触发事件,其他线程可以等待这个事件来触发自己后 ...

  9. CISCO3560 VLAN配置实例

    1.注意事项 1.1.交换机启动需要大约4-5分钟: 1.2.网线插入交换机接口从黄变为绿需要大约1-2分钟,即进入正常工作模式: 1.3.建议使用XP系统进行操作,2003默认没有安装超级终端,需要 ...

  10. TcxDBVerticalGrid优秀的编辑控件