`
380071587
  • 浏览: 447547 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Visual Studio技巧之打造拥有自己标识的代码模板

 
阅读更多

可能经过很多博客的介绍,大家都知道代码段的使用,使用代码段可以很方便地生成一些常用的代码格式,确实对我们开发很方便。在团队开发中或者在某些情况下我们经常可能还会希望使用Visual Studio生成的代码自动带有一些信息,比如代码文件的创建时间、代码的说明及对命名空间的引用等等,实际上这个功能经周公证实在Visual Studio2005以上版本中就支持了。
下面以周公的本本的具体情况为例来加以说明,在周公的DELL 1425(之所以提这款笔记本是提醒大家不要购买垃圾DELL)上系统是安装在C盘,在系统盘下同时安装了Visual Studio 2005和Visual Studio 2008两套Visual Studio,并且安装了正版的SQL Server 2005,因为系统盘经常在Windows XP和Windows 7之间切换并且还想在Windows XP和Windows 7之间共享某些个人配置,所以将我的文档目录设置到了系统最后的一个盘G盘上了,具体路径为G:/My Documents,如果不做特别配置应为C:/Documents and Settings/zhoufoxcn/My Documents,这一点尤其注意。
这里针对Visual Studio 2008来进行说明,首先我们打开C:/Program Files/Microsoft Visual Studio 9.0/Common7/IDE这个目录(如果使用Visual Studio 2005则对应的路径为C:/Program Files/Microsoft Visual Studio 8/Common7/IDE),可以看到如下的情况:

从上图中可以看出ItemTemplates和ProjectTemplates文件夹被周公选中了,因为这个文件夹对我们有用。其中ItemTemplates文件中存放着我们向项目添加文件时的模板,ProjectTemplates文件夹顾名思义存放着我们创建项目的模板。这些文件夹中的模板分别会在我们创建文件或者项目时出现。
除了这些模板之外,Visual Studio在新建时还会搜索当前用户的个人模板,在周公的本本上针对Visual Studio 2008的个人模板存放路径为G:/My Documents/Visual Studio 2008/Templates(如果没有经过这种这样的特殊设置,这个路径可能为C:/Documents and Settings/zhoufoxcn/My Documents/Visual Studio 2008/Templates,其中的zhoufoxcn为当前登录系统的用户名),打开这个文件夹,我们看到如下情况:

在没有做任何配置的时候这两个文件夹都是空的,在此时如果我们向项目中添加文件会看到这样的情况,如下图:

从上图可以看出,我的模板是空的。
好了,下面周公将C:/Program Files/Microsoft Visual Studio 9.0/Common7/IDE下的ItemTemplates和ProjectTemplates文件夹拷贝到了当前个人配置文件夹G:/My Documents/Visual Studio 2008/Templates下(请注意你的电脑配置与我的电脑配置中路径的对应关系),可能系统会提示是否覆盖,点击确认之后我们再在任何项目中创建新文件会看到下面的情况,如下图所示:

此时我们可以看到我的模板下可以创建的新文件类型和系统的一摸一样,如果此时我们选择创建的话,生成的文件内容也会和系统模板的一样。为了打造属于我们个性的代码,我们需要对我的模板进行改造。
举例来说,假如我们要改变系统默认生成的代码,想在创建代码时自动添加一些信息,比如我们想让默认生成的是public的,那么可以按照下面的步骤做:
首先打开我的模板存放路径,在周公这里这个路径是G:/My Documents/Visual Studio 2008/Templates/ItemTemplates(请注意你的可能与周公的不同),这个文件夹下存放的是包含VB.NET、C++及C#等新建项目的模板,如果我们要改变的是C#文件的,请继续打开C#文件的创建模板,在周公本本上这个路径为G:/My Documents/Visual Studio 2008/Templates/ItemTemplates/CSharp/Code/2052,在这个文件夹下有四个zip文件,名称是Class.zip、CodeFile.zip、Interface.zip和NETCFv2-Class.zip,分别对应的是添加类、代码文件、接口及.NET Compact Framework类的模板,在每个zip压缩包里都有一个.cs文件和一个.vstemplate文件。在这里周公将Class.zip解压出来,这时的class.cs文件代码如下:


将代码更改如下:


保存class.cs,然后利用压缩软件将class.cs和刚刚从Class.zip中解压出来Class.vstemplate文件压缩为Class.zip文件(注意一定要压缩成zip文件而不是rar或者其它格式文件,WinRAR提供这种功能),然后替换原来的Class.zip文件。
好了,现在我们可以检验我们的成果了。随便打开一个项目,按照“添加”-“新建项”的步骤添加,在弹出的对话框中“我的模板”下选择“类”(因为我们刚刚改的就是我的模板中添加的类的模板),这时Visual Studio 2008按照模板生成的代码如下:


从上面的例子可以看出选择我的模板的项就会按照预定好的格式生成代码,如果我们对项目中的代码有特殊格式要求的话,在这里统一定制非常方便,至少周公以后会用这种模板来写公布在博客上的代码,因为周公注意到有很网站喜欢将别人博客上的文章中的链接信息和作者信息去掉,这事实上违反了作者的声明。有时间的话我们可以针对每一个项更改出自己的模板。
上面我们仅仅演示了生成新文件的配置,其实我们还可以更改新生成项目的配置,按照前面的操作我们添加新项目时也有我的模板选项,如下图所示:

不过即使从我的模板中选择创建新项目也和系统中的项目一样,因为没有经过任何特殊配置。我们可以修改G:/My Documents/Visual Studio 2008/Templates/ProjectTemplates/CSharp下的项目模板,它们同样也是一个zip文件,比如我们想要统一程序集信息,可以修改这个zip文件中的assemblyinfo.cs文件的内容,这样就不用每次都手动去修改程序集信息了。
通过上面的步骤之后可以让我们很方便地定制了添加新项或者新项目的模板,这在公司中团队开发中还是相当有用的,也方便对代码文件的格式的统一。
需要说明的是在编辑模板时会看到一个形如$time$、$rootnamespace$之类的东西,这些算是生成模板时用到的变量吧,在编辑模板时可以使用哪些变量微软没有官方的资料,不过周公留意了一下,大概有如下:
Itemname
safeitemname
sateitemrootname
projectname
safeprojectname
rootnamespace
guid[1-10]
time
year
username
userdomain
machinename
clrversion
targetframeworkversion
registeredorganization
wizarddata
可能有些人对上面的变量名不是太理解,其实是有规律的,都是一到几个单词的全称,只不过没有遵循我们平常所说的Camel和Pascal命名法则罢了(大家可以看的出不遵守命名法则确实难读多了),知道这个规律之后这些变量的用途大家都能顾名思义了,如果确实不能也能根据最终生成的代码推断出它的用法的。此外,如果觉得每次都要从“我的模板下”选择很麻烦的话,可以用更改后自定义模板替换系统中的模板。在刚刚编辑模板时我们还看到了一些简单逻辑,比如当使用的项目.NET Framework版本为3.5时会自动使用System.Linq命名空间,我们还可以模范系统模板中的逻辑增加更多更符合个人或者公司需要的逻辑。

周公
2010-06-20

分享到:
评论

相关推荐

    Visual Studio 2010 完全卸载工具

    微软官方提供的Visual Studio 2010彻底卸载工具,本人已亲测。用它可以轻松彻底地删除Visual Studio 2010以及它诸多的依赖项,让你彻底从机器上删除Visual Studio 2010。支持Visual Studio 2010 各种版本。 微软官方...

    Visual Studio经典C++入门教程

    Visual Studio,我们一般都简称为 VS,VC 全称是 Visual C++,C++就不用解释了吧?VisualStudio 其实是微软开发的一套工具集,它由各种各样的工具组成,这就好像 Office 2007是由 Word 2007、Excel 2007、Access ...

    VisualSVN for Visual Studio 2022插件

    Visual Studio 2022 visualSvn 插件 亲测可用 如果你下载慢,就可以来这边下载。官方的下载速度太慢,真的等的没有耐心 VisualSVN is a professional grade Subversion integration plug-in for Visual Studio. Key...

    Visual Studio 技术大全part1

    Visual Studio 技术大全分成了4个part上传; 分别为Visual Studio 技术大全part1 Visual Studio 技术大全part2 Visual Studio 技术大全part3 Visual Studio 技术大全part4

    Visual C++ Redistributable for Visual Studio 2015

    Visual C++ Redistributable for Visual Studio 2015 Visual C++ Redistributable for Visual Studio 2015

    Visual Studio 2015 高级编程书中源代码

    精通Visual Studio 2015包含大量有助于提高编程效率的新功能以及专用于跨平台开发的新工具。综合性指南 Visual Studio2015高级编程(第6版) 遵循“由程序员为程序员而著”的理念,涵盖所有增强的开发工具,帮你快速...

    visual studio代码补全插件

    visual studio代码补全插件的代码补全插件,具体操作参考https://www.cnblogs.com/f8master/p/3826076.html

    Oracle Developer Tools for Visual Studio 2019

    Oracle Developer Tools for Visual Studio 2019( ODT for VS 2019 19.3.0.0.0 (12 MB)) Download ODT for VS 2019, extract and run the VSIX file to install Oracle Developer Tools for Visual Studio 2019 ...

    Visual Studio程序员箴言

    , 《Visual Studio程序员箴言》的作者是一位经验丰富的Visual Studio测试工程师,她将自己平日博客上的Visual Studio使用技巧归纳成书,并通过图例让读者对技巧的作用了如指掌。无论是对Visual Studio初学者还是经验...

    visual studio net初学者教程

    visual studio net初学者教程visual studio net初学者教程

    SonarLint for Visual Studio 2019

    因为这是一个离线的文件,需要安装到visual studio中,怎么操作呢? 也是有办法的,不能直接像普通的exe文件一样双击就可以安装,他需要利用visual studio环境下的vsixinstaller.exe可执行程序来安装。我们需要...

    visual studio 2005下OpenGL配置

    visual studio 2005下OpenGL配置 vs2005下OPENGL配置 visual studio 2005下OpenGL配置 vs2005下OPENGL配置 visual studio 2005下OpenGL配置 vs2005下OPENGL配置 visual studio 2005下OpenGL配置 vs2005下OPENGL配置 ...

    Visual Studio 2008常用小技巧

    Visual Studio 2008常用小技巧,特殊快捷键,特殊设置

    visual studio 2010 源代码

    visual studio 2010 实例代码

    [Visual Studio] Visual Studio 2013 高级编程 (英文版)

    [Wrox] Visual Studio 2013 高级编程 (英文版) [Wrox] Professional Visual Studio 2013 (E-Book) ☆ 图书概要:☆ Comprehensive guide to Visual Studio 2013 Visual Studio is your essential tool for ...

    VisualStudio的代码XML注释转化为Word文本

    后来发现VisualStudio里面居然可以把代码里面的XMl注释生成文件,在网上又看见个可以把XML文件转换成html文档查看的,就考虑自己写一个程序直接生成Word文档。 由于对Word编程也不熟,所以Word文档那个类也是在网上...

    代码注释对齐Visual Studio AddIn

    代码注释对齐Visual Studio AddIn 插件

    Visual Studio 2017 version 15.4

    Visual Studio 2017 version 15.4 中包含四个版本:Visual Studio Community 2017-适用于学生、开源和个人开发人员的功能完备的免费 IDE;Visual Studio Professional 2017-适用于小型团队的专业开发人员工具、服务...

    【支持Visual Studio 2017】Visual Studio 版本转换器最新版

    最新版本Visual Studio版本转化,支持Visual Studio 2017哦,喜欢的就下载吧

Global site tag (gtag.js) - Google Analytics