- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
codesmith开发系列资料总结
编写第一个CodeSmith代码模板 在CodeSmith使用教程(1):概述我们通过使用CodeSmith从数据库自动生成NHiberate代码,可以了解到使用CodeSmith自动生成代码的基本步骤: 其核心为代码模板文件,随CodeSmith自带了不少常用的模板,可以通过模板浏览器来查询,此外网上也有很多第三方开发的模板,在使用前可以先查查是否已有现成的模板,或是可以通过修改现有的模板来完成自动生成代码的需要。 在开发应用时,很多人都喜欢通过复制以前的项目中的代码,然后通过修改以满足新项目,这些重用的代码通常具有很多共性,CodeSmith就是用来为这些具有相似性的代码创建模板,然后通过设置属性,就可以自动创建所需代码。 本例通过一个简单的例子来介绍创建一个自定义代码模板的方法。CodeSmith提供了VisualStudio的集成开发环境的支持,本例也是通过创建模板自动生成简化每个的C#项目都需要的,在开发C#应用时,一般是通过手工修改的中属性). 首先我们使用VisualStudio创建一个C#HelloWorld下面,可以打开项目中的 为了使用CodeSmith,我们在HelloWorld中添加CodeSmith的项目文件并创建一个模板文件 创建好的 项目文件如下: 编写CodeSmith的代码模板和编写的Page非常类似,CodeSmith支持以C#,和JavaScript做为脚本语言来编写模板,本例使用C#做为脚本语言,计划生成的也是C#语言,打开 ,修改代码为 每个CodeSmith的代码模板都是以CodeTemplate开始,定义代码模板使用的源语言,目标语言和简单的描述。 然后将这个模板添加到CodeSmith项目中,可以右键单击,选择Addoutput 这时CodeSmith的项目将创建好了,但单击”Generatecode”不会生成任何代码,因为我们的代码模板没做任何事。 创建代码模板可以从生成的结果开始,可以直接先把要生成的代码复制到代码模板中,比如: 可以把要生成的代码模板的内容分成三部分: 固定内容 可以通过代码动态生成的部分 需要用户提供属性配置的部分 此时如果使用Codesmith的GenerateCodes,将自动生成(缺省为模板名),不过位置不是我们所需的 Properties/,这可以通过重载代码模板的GetFileName方法来实现: 这样在使用CodeSmith项目的GenerateCodes,就自动覆盖原来的 Properties/文件。内容就是模板中的代码部分。 但每次生成的代码都是固定的,作为模板来说没有什么灵活性,下面我们可以通过检查模板的内容,觉定那些内容是可变的。比如的日期和Assembly的各个属性对于不同的项目来说是可变的。 这些可变的内容其中一部分可以通过代码自动生成,有一部分需要用户来配置,比如AssemblyTitle ,AssemblyDescription等。 对于日期部分可以通过C#代码实现如下: CodeSmith基础 创建好一个模板后第一步要指明这是一个C#语言的模板。 第二步,我们要指明模板在生成代码时的属性,即生成代码需要的输入值变量。 如上边所示,在进行代码生成时,在CodeSmithExplorer中选择模板后生成代码的窗 口中,变量的名称为NameSpace,类型是String,类别是Context,当用户选中这个属性时对于属性的描述Description。 我们可以按照C#语言的语法去使用定义的变量,例如: //File:.cs 例如下面这个例子模板使用了上面介绍的知识。 /////////////////////////////////////////////////////////////////////////////////////////File:.cs //Description:Entersummaryhereaftergeneration. // //Copyright.OurClient // //History //OriginalVersion ///////////////////////////////////////////////////////////////////////////////////////usingSystem; namespace { /// ///Summarydescriptionfor. /// publicclass
您可能关注的文档
最近下载
- 贵州省巩固拓展脱贫攻坚成果专项学生资助申请表.docx VIP
- 信息系统自行软件开发管理规定.docx
- 湖北省武汉市洪山区2024-2025学年八年级上学期期中质量检测数学试题(图片版,含答案).doc VIP
- 2025至2030全球及中国腓骨肌萎缩症ⅠA型药物行业项目调研及市场前景预测评估报告.docx
- 2025年供电所职工考试题库及答案.docx VIP
- 电网考试供电局简答题.pdf VIP
- 附件2.贵州省巩固拓展脱贫攻坚成果专项学生资助申请表(本科).docx VIP
- 基于Matlab的变压器励磁涌流仿真分析.doc VIP
- SH╱T 3526-2015 石油化工异种钢焊接规范.pdf VIP
- 《现代中式家居设计》课件.ppt VIP
文档评论(0)