自定义Visual Studio 2010模板自动生成文件头注释
在日常软件开发过程中,为代码文件添加标准的头部注释是一项常见但重复的工作。通过自定义Visual Studio 2010的模板文件,我们可以实现自动生成这些注释信息,从而提高开发效率。
首先需要定位Visual Studio 2010的安装目录下的\Common7\IDE\ItemTemplatesCache\CSharp\文件夹,其中包含了各种项目类型的模板文件。在这个目录下,你会看到多个子文件夹,分别对应不同的项目类型,如Windows Forms、Web等。

以Web项目为例,进入\Web\2052\目录(2052代表中文区域),找到并解压\WebForm.zip\Default.aspx.cs文件。默认情况下,该文件内容如下:
using System;
using System.Collections.Generic;
$if$ ($targetframeworkversion$ >= 3.5)using System.Linq;$endif$
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace $rootnamespace$
{
public partial class $classname$ : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
}
复制代码 模板文件中的"$"符号之间的内容是变量,会在创建新文件时自动替换为相应信息。常用变量及其含义如下:
$time$ 当前日期<br>
$year$ 当前年份<br>
$clrversion$ .NET CLR版本<br>
$GUID$ 用于替换项目文件中的项目GUID<br>
$itemname$ 用户在对话框中提供的名称<br>
$machinename$ 当前计算机名称<br>
$projectname$ 用户在对话框中提供的项目名称<br>
$registeredorganization$ 注册表中记录的组织名称<br>
$rootnamespace$ 当前项目的根命名空间<br>
$safeitemname$ 用户提供的名称,已移除不安全字符和空格<br>
$safeprojectname$ 用户提供的项目名称,已移除不安全字符和空格<br>
$userdomain$ 当前用户域<br>
$username$ 当前用户名
复制代码 下面是一个自定义的头部注释模板示例:
// ===============================================================================
// 项目名称 : $rootnamespace$
// 项目描述 :
// ===============================================================================
// 类名称 : $safeitemrootname$
// 类版本 : v1.0.0.0
// 类描述 :
// 作者 : $username$
// 创建时间 : $time$
// 更新时间 : $time$
// ===============================================================================
// Copyright © $machinename$ $year$ . All rights reserved.
// ===============================================================================
复制代码 将上述代码添加到Default.aspx.cs文件的开头,保存并重新压缩为WebForm.zip文件。这样,每次创建新的Web窗体时,都会自动包含自定义的头部注释。
修改后的最终效果如下:
// ===============================================================================
// 项目名称 : Weisenz.Web
// 项目描述 :
// ===============================================================================
// 类名称 : Services
// 类版本 : v1.0.0.0
// 类描述 :
// 作者 : Charles
// 创建时间 : 2012/3/29 13:38:53
// 更新时间 : 2012/3/29 13:38:53
// ===============================================================================
// Copyright © Weisenz 2012 . All rights reserved.
// ===============================================================================
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace Weisenz.Web
{
public partial class Services : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
}
复制代码 通过同样的方法,你可以修改其他类型的模板文件,为不同类型的项目添加自定义的头部注释。只需找到对应的模板文件,按照上述步骤进行修改即可。
