在使用代码模板产生代码时,CodeSmith 引擎背后使用了不少对象来帮助代码的生成,其中常用的有CodeTempate (类似于 Asp.Net 的 Page 类)Progress 用于显示代码生成的进度CodeTemplateInfo 可以返回关于当前模板自身的一些信息。
由于 CodeSmith 的代码模板使用了和 Asp.Net 类似的语法,因此如果要使用 CodeSmith 模板生成Asp.Net 脚本时比如“<%” 就碰到了问题, <% 会被 CodeSmith 解释成 CodeSmith 自己的标记,因此需要使用转义标签来代替需要插入到 Asp.Net 代码中的标签。具体方法是使用 <%% 来替换需要生成的 Asp.Net 中的 <%标记。比如我们要生成如下的 Asp.Net 代码:<
CodeSmith 的核心是模板,而使模板具有活力的就是属性,通过定义属性从而使代码模板能够根据配置生成所需的代码。在使用代码模板时首先也必须给模板定义的属性定义值才能使用 CodeSmith 通过模板产生代码。有些属性具有缺省值,这些属性可以不需要配置。模板中的属性通过 Property 指令来定义:<
在模板中可以添加注释,注释通过 <%–和–%>块来定义,注释可以有多行。比如:<%--Name: TestHarness.cstDescription: Generates a standard test harness for an object--%>如果在代码模板中使用 C#,VB.Net 或是 JavaScripts 脚本,可以使用所使用语言对应的注释,比如C# 语言可以使用 // 或 / commented /。
前面的几篇介绍了使用 CodeSmith 模板自动生成代码和编写代码模板的基本知识。也说过 CodeSmith最核心的部分是代码模板,从本篇开始介绍 CodeSmith 代码模板的基本语法,对于 Asp.Net 程序员来说,可以说是碰到老朋友了:-) ,CodeSmith 的代码模板和 Asp.Net Page 几乎如出一辙。
上例介绍了使用 CodeSmith 编写代码模板的基本方法,本例实现一个较为实用的代码模板,通过数据库自动为 Yii Framework 生成所需要的 ActiveRecord 类。本例通过修改 Yii Framework 开发教程(26) 数据库-Active Record 示例,原例是手工编写 Employee.php ActiveRecord。
在CodeSmith 使用教程(1): 概述我们通过使用 CodeSmith 从数据库自动生成 NHiberate 代码,可以了解到使用 CodeSmith 自动生成代码的基本步骤:选择使用合适的模板,CodeSmith 随开发包自带了大量常用的模板,如果找不到合适的模板,CodeSmith 支持自定义模板。为模板选择合适的参数设置。自动生成代码(可以为任意类型的代码,C#,Java, .
前面正在介绍 hibernate 的开发教程,提到 hibernate 在 .Net 平台上相应的 ORM 工具为NHibernate,使用 NHibernate 就不能不提到 CodeSmith。CodeSmith 是一种基于模板的代码生成工具,它使用类似于 ASP.NET 的语法来生成任意类型的代码或文本。与其他许多代码生成工具不同,CodeSmith 不要求您订阅特定的应用程序设计或体系结构。
CodeSmith 是一种基于模板的代码生成工具,它使用类似于 ASP.NET的语法来生成任意类型的代码或文本。适用人群前面基本介绍了CodeSmith的基本用法和编写代码模板的基本方法,这只是CodeSmith功能的一部分,其它部分可以参考CodeSmith文档和类文件定义。此外可以参考CodeSmith附带的示例模板。鸣谢:引路蜂移动软件
TitleLinkOfficial Git Sitehttp://git-scm.com/Official Git Video Tutorialshttp://git-scm.com/videosCode School Try Githttp://try.github.com/Introductory Reference & Tutorial for Githttp://gitref.org/Official Git Tutorialhttp://git-scm.com/docs/gittutorialEveryday Githttp://git-scm.
所有 Git 配置都保存在你的.gitconfig文件中。Git 命令自定义别名别名用来帮助你定义自己的 git 命令。比如你可以定义 git a 来运行 git add --all。要添加一个别名,一种方法是打开 ~/.
从工作区去除大量已删除文件当用 /bin/rm 命令删除了大量文件之后,你可以用下面一条命令从工作区和索引中去除这些文件,以免一个一个的删除:$ git rm $(git ls-files -d)例如:$ git statusOn branch masterChanges not staged for commit: deleted: a deleted: c$ git rm $(git ls-files -d)rm 'a'rm 'c'$ git statusOn branch masterChanges t…
GitHub Pages 的元数据与插件支持在 Jekyll 页面和文章里,仓库信息可在 site.github 命名空间下找到,也可以显示出来,例如,使用 {{ site.github.project_title }}显示项目标题。Jemoji 和 jekyll-mentions 插件为你的 Jekyll 文章和页面增加了 emoji 和 @mentions功能。
Markdown 文件语法高亮例如,可以像下面这样在你的 Markdown 文件里为 Ruby 代码添加语法高亮:```rubyrequire 'tabbit'table = Tabbit.new('Name', 'Email')table.add_row('Tim Green', 'tiimgreen@gmail.com')puts table.to_s```效果如下:rubyrequire 'tabbit'table = Tabbit.new('Name', 'Email')table.add_row('Tim Green', 'tiimgreen@gmail.
不比较空白字符在任意 diff 页面的 UR L后加上 ?w=1,可以去掉那些只是空白字符的改动,使你能更专注于代码改动。调整 Tab 字符所代表的空格数在 diff 或文件的 URL 后面加上?ts=4,这样当显示 tab 字符的长度时就会是 4 个空格的长度,不再是默认的 8 个空格。 ts 后面的数字还可以根据你个人的偏好进行修改。
Git 是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。GitHub 可以托管各种 Git 库,是一个网站,给用户提供 Git 服务。本文主要讲解了 Git 和 Github 比较炫酷的功能,能够帮助读者深入了解 Github 这个网站的功能。适用人群本书为 Github 中级教程,适用在 Github 上做开源项目、制作自己的博客和协同做项目的开发者。
商业分析能力是怎样炼成的?这是一个全民创业的时代,可无论你是想成为下一个马云还是只想开一家咖啡店,提前告诉你答案:两年之内,倒闭是绝大多数人的必然命运。我们日常生活被一个又一个商业神话所包围,只不过因为那些黯然离场的失败者不曾有人知道。 当我们谈起 O2O,除了高频和刚需,还能剩下什么?
罗辑思维《时间的朋友》跨年演讲视频罗辑思维《时间的朋友》跨年演讲全回顾专门为了看视频花 20 买了优酷的视频,连续看全 4 个小时, 收获颇多,罗胖自己对 2016 年的解读。
张小龙首次公开演讲(官方无删减版)文章很长,下午花了十来分钟完整读完了。 放下你的无效社交老师,你说是认真学习重要,还是经营人脉重要? 产品设计为什么张小龙说好产品要用完即走?你真能理解产品大神的精髓吗?白崎为你详细解读 —— 用户需求的满足分为两种:一种是特定需求的即时性满足,另一种是为消耗时间的非即时性满足。
QQ 第一位产品经理吴宵光:腾讯 17 年发展史上的 14 个关键点腾讯业务发展的三个阶段 在一个产品经理眼中,微信应用号会做成什么样?入口、形态、消息通知形式、还是接口?
关注时代Java