在日常的开发过程中我们经常需要为我们的类文件添加注释和版权等信息,以前都是将信息文本复制、粘贴,要是添加一两个个还好,要是添加很多就显得很麻烦了。为了减少这种重复性的工作,有没有好的解决办法呢?答案是肯定的,其实我们每次添加的文件都是按照类库模板自动生成的,所以只需要修改Visual Studio的类库模板就可以了。

首先找到Visual Studio(2005、2008、2010) 的安装路径下\Common7\IDE\ItemTemplatesCache\CSharp\目录,面有好多目录,Windows Forms是开发Windows Forms程序的模版目录,Web是Web项目文件的模版目录,其他的同理。进入Web目录有选择2052目录(2052是中文地区的代号)下,会看到好多带有.zip的目录,比如要修改web页面的模版,就修改\WebForm.zip\Default.aspx.cs,打开Default.aspx.cs会看到如下内容。

  1. using System;  
  2. using System.Collections.Generic;  
  3. $if$ ($targetframeworkversion$ == 3.5)using System.Linq;  
  4. $endif$using System.Web;  
  5. using System.Web.UI;  
  6. using System.Web.UI.WebControls;  
  7. namespace $rootnamespace$  
  8. {  
  9. public partial class $classname$ : System.Web.UI.Page  
  10. {  
  11. protected void Page_Load(object sender, EventArgs e)  
  12. {  
  13. }  
  14. }  
  15. }

代码中的"$"符号之间的字符是模版的变量,具体变量含义请参照:

  1. <strong>time$ 日期  
  2. $year$ 年份  
  3. $clrversion$ CLR版本  
  4. $GUID$ 用于替换项目文件中的项目 GUID 的 GUID。最多可以指定 10 个唯一的 GUID(例如,guid1))。  
  5. $itemname$ 用户在对话框中提供的名称。  
  6. $machinename$ 当前的计算机名称(例如,Computer01)。  
  7. $projectname$ 用户在对话框中提供的名称。  
  8. $registeredorganization$ HKLM\Software\Microsoft\Windows NT\CurrentVersion\RegisteredOrganization 中的注册表项值。  
  9. $rootnamespace$ 当前项目的根命名空间。此参数用于替换正向项目中添加的项中的命名空间。  
  10. $safeitemname$ 用户在“添加新项”对话框中提供的名称,名称中移除了所有不安全的字符和空格。  
  11. $safeprojectname$ 用户在“新建项目”对话框中提供的名称,名称中移除了所有不安全的字符和空格。  
  12. $time$ 以 DD/MM/YYYY 00:00:00 格式表示的当前时间。  
  13. $userdomain$ 当前的用户域。  
  14. $username$ 当前的用户名。  
  15. </strong>

我的一个注释示例:

  1. /************************************************************************  
  2. * 项目名称 :  工作日志系统   
  3. * 项目描述 :       
  4. * 类 名 称 :  UserInfo     
  5. * 版 本 号 :  v1.0.0.0   
  6. * 说    明 :  用户信息管理类     
  7. * 作    者 :  灵雨飘零   
  8. * 创建时间 :  2011/12/15 13:19:28  
  9. * 更新时间 :  2011/12/15 13:19:28  
  10. ************************************************************************  
  11. * Copyright @ 灵雨工作室 2011 . All rights reserved.  
  12. ************************************************************************/

按照上面的实例设计模板:

  1. /************************************************************************
  2. * 项目名称 :  $rootnamespace$  
  3. * 项目描述 :     
  4. * 类 名 称 :  $safeitemrootname$
  5. * 版 本 号 :  v1.0.0.0 
  6. * 说    明 :     
  7. * 作    者 :  $username$
  8. * 创建时间 :  $time$
  9. * 更新时间 :  $time$
  10. ************************************************************************
  11. * Copyright @ 灵雨工作室 $year$. All rights reserved.
  12. ************************************************************************/
  1. <pre class="csharp" name="code">using System;  
  2. using System.Collections.Generic;  
  3. $if$ ($targetframeworkversion$ == 3.5)using System.Linq;  
  4. $endif$using System.Web;  
  5. using System.Web.UI;  
  6. using System.Web.UI.WebControls;  
  7. namespace $rootnamespace$  
  8. {  
  9. public partial class $classname$ : System.Web.UI.Page  
  10. {  
  11. protected void Page_Load(object sender, EventArgs e)  
  12. {  
  13. }  
  14. }  
  15. }  
  16. </pre>  
  17. <pre></pre>  
  18. <p><br>  
  19. 生成的文件:<br>  
  20. </p>  
  21. <pre class="csharp" name="code">/************************************************************************
  22. * 项目名称 :  工作日志系统  
  23. * 项目描述 :     
  24. * 类 名 称 :  Default2
  25. * 版 本 号 :  v1.0.0.0 
  26. * 说    明 :     
  27. * 作    者 :  灵雨飘零
  28. * 创建时间 :  2012-5-12 14:26:49
  29. * 更新时间 :  2012-5-12 14:26:49
  30. ************************************************************************
  31. * Copyright @ 灵雨工作室 2012. All rights reserved.
  32. ************************************************************************/
  33. using System;  
  34. using System.Collections.Generic;  
  35. using System.Linq;  
  36. using System.Web;  
  37. using System.Web.UI;  
  38. using System.Web.UI.WebControls;  
  39. public partial class Default2 : System.Web.UI.Page  
  40. {  
  41. protected void Page_Load(object sender, EventArgs e)  
  42. {  
  43. }  
  44. }  
  45. </pre>  
  46. <p> </p>  
  47. <p>修改其他的模板按照以上修改方法即可,此处不再详述。</p>  
  48. <p><br>  
  49. </p>

让Visual Studio 自动添加头部注释信息的更多相关文章

  1. Visual Studio自动添加头部注释

    VS2013 自动添加头部注释 1.找到VS2013的安装目录 下文以安装目录 C:\Program Files (x86)\Microsoft Visual Studio 12.0 为例 2.修改C ...

  2. Visual Studio自动添加头部注释 -C#开发2010-2013验证

    在团队开发中,头部注释是必不可少的.但在开发每次新建一个类都要复制一个注释模块也很不爽,所以得想个办法让开发工具自动生成我们所需要的模板.....操作方法如下: 找你的vs安装目录, 比如我的是在D盘 ...

  3. Visual Studio 20**自动添加头部注释信息

    关于Visual Studio 20**自动添加头部注释信息   作为一个万年潜水党,不关这一篇文章技术含量如何,也算是一个好的开始吧.   在日常的开发中我们经常需要为类库添加注释和版权等信息,这样 ...

  4. 关于Visual Studio 20**自动添加头部注释信息

    作为一个万年潜水党,不管这一篇文章技术含量如何,也算是一个好的开始吧.   在日常的开发中我们经常需要为类库添加注释和版权等信息,这样我们就需要每次去拷贝粘贴同样的文字,为了减少这种重复性的工作,我们 ...

  5. 关于Visual Studio 2010自动添加头部注释信息

    作为一个万年潜水党,不关这一篇文章技术含量如何,也算是一个好的开始吧.   在日常的开发中我们经常需要为类库添加注释和版权等信息,这样我们就需要每次去拷贝粘贴同样的文字,为了减少这种重复性的工作,我们 ...

  6. Visual Studio 2010自动添加头部注释信息

    在日常的开发中我们经常需要为我们的类库添加注释和版权等信息,这样我们就需要每次去拷贝粘贴同样的文字,为了减少这种重复性的工作,我们可以把这些信息保存在Visual Studio 2010类库模版文件里 ...

  7. C#实现为类和函数代码自动添加版权注释信息的方法

    这篇文章主要介绍了C#实现为类和函数代码自动添加版权注释信息的方法,主要涉及安装文件的修改及函数注释模板的修改,需要的朋友可以参考下   本文实例讲述了C#实现为类和函数代码自动添加版权注释信息的方法 ...

  8. vim创建程序文件自动添加头部注释/自动文件头注释与模板定义

    Vim 自动文件头注释与模板定义 在vim的配置文件.vimrc添加一些配置可以实现创建新文件时自动添加文件头注释,输入特定命令可以生成模板. 使用方法 插入模式输入模式输入seqlogic[Ente ...

  9. VS2015 自动添加头部注释

    让VS自动生成类的头部注释,只需修改两个文集即可,一下两个路径下个有一个 Class.cs文件 D:\Program Files (x86)\Microsoft Visual Studio 14.0\ ...

随机推荐

  1. Link-based Classification相关数据集

    Link-based Classification相关数据集 Datasets Document Classification Datasets: CiteSeer: The CiteSeer dat ...

  2. JXTA 2: 具有高性能、海量伸缩性的 P2P 网络

    这是来自developerWorks的一篇文章,地址是 https://www.ibm.com/developerworks/cn/java/j-jxta2/ ———————————————————— ...

  3. JAVA图像缩放处理

    http://www.blogjava.net/kinkding/archive/2009/05/23/277552.html ———————————————————————————————————— ...

  4. VMWare虚拟机 网络连接模式

    这个是rocks 群里面我的一个朋友分享的,我觉很好而且描述的很清楚,这是一个做事的态度问题.   1 VMWare虚拟机bridged.host-only和NAT网络模式的区别和用法 VMWare提 ...

  5. ASP.NET中26种性能优化方法

    系统类  Type类,Object类,String类, Arrary类,Console类, Exception类,GC类, MarshalByRefObject类, Math类. DateTime结构 ...

  6. python 学习笔记 if语句

    一.if语句的格式 语句块必须有相同的缩进. 语句块必须比if,elif,else多一层缩进 # 如果条件成立则执行语句块1, # 否则 如果条件2成立则执行语句块2 # 其他情况执行语句块3 # e ...

  7. 第二百三十一节,Bootstrap 介绍

    Bootstrap 介绍 学习要点: 1.Bootstrap 概述 2.Bootstrap 特点 3.Bootstrap 结构 4.创建第一个页面 5.学习的各项准备 本节课我们主要了解一下 Boos ...

  8. highCharts图表应用-模拟心电图

    通过前两章的学习,相信大家对highcharts已经有了初步的了解.这一章将通过一个例子来模拟Highcharts如何实现经常变化的数据显示. 比如说股票的涨停.实时篮球比分以及A选手和B选手的支持率 ...

  9. 关于OBJC

    http://www.objc.io/ objc这个站点是:关于objective-c语言的最佳实践和高阶技术的期刊. 看了几期非常不错,所以计划每天抽出时间翻译一篇文章和大家一起分享.

  10. python 之 re模块(正则表达式)

    一.起源(历史) 正则表达式的“鼻祖”或许可一直追溯到科学家对人类神经系统工作原理的早期研究.美国新泽西州的Warren McCulloch和出生在美国底特律的Walter Pitts这两位神经生理方 ...