在日常的開發過程中我們經常需要為我們的類文件添加注釋和版權等信息,以前都是將信息文本復制、粘貼,要是添加一兩個個還好,要是添加很多就顯得很麻煩了。為了減少這種重復性的工作,有沒有好的解決辦法呢?答案是肯定的,其實我們每次添加的文件都是按照類庫模板自動生成的,所以只需要修改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會看到如下內容。
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$ 日期 $year$ 年份 $clrversion$ CLR版本 $GUID$ 用於替換項目文件中的項目 GUID 的 GUID。最多可以指定 10 個唯一的 GUID(例如,guid1))。 $itemname$ 用戶在對話框中提供的名稱。 $machinename$ 當前的計算機名稱(例如,Computer01)。 $projectname$ 用戶在對話框中提供的名稱。 $registeredorganization$ HKLM\Software\Microsoft\Windows NT\CurrentVersion\RegisteredOrganization 中的注冊表項值。 $rootnamespace$ 當前項目的根命名空間。此參數用於替換正向項目中添加的項中的命名空間。 $safeitemname$ 用戶在“添加新項”對話框中提供的名稱,名稱中移除了所有不安全的字符和空格。 $safeprojectname$ 用戶在“新建項目”對話框中提供的名稱,名稱中移除了所有不安全的字符和空格。 $time$ 以 DD/MM/YYYY 00:00:00 格式表示的當前時間。 $userdomain$ 當前的用戶域。 $username$ 當前的用戶名。
我的一個注釋示例:
/************************************************************************ * 項目名稱 : 工作日志系統 * 項目描述 : * 類 名 稱 : UserInfo * 版 本 號 : v1.0.0.0 * 說 明 : 用戶信息管理類 * 作 者 : 靈雨飄零 * 創建時間 : 2011/12/15 13:19:28 * 更新時間 : 2011/12/15 13:19:28 ************************************************************************ * Copyright @ 靈雨工作室 2011 . All rights reserved. ************************************************************************/
按照上面的實例設計模板:
/************************************************************************ * 項目名稱 : $rootnamespace$ * 項目描述 : * 類 名 稱 : $safeitemrootname$ * 版 本 號 : v1.0.0.0 * 說 明 : * 作 者 : $username$ * 創建時間 : $time$ * 更新時間 : $time$ ************************************************************************ * Copyright @ 靈雨工作室 $year$. All rights reserved. ************************************************************************/
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) { } } }
生成的文件:
/************************************************************************ * 項目名稱 : 工作日志系統 * 項目描述 : * 類 名 稱 : Default2 * 版 本 號 : v1.0.0.0 * 說 明 : * 作 者 : 靈雨飄零 * 創建時間 : 2012-5-12 14:26:49 * 更新時間 : 2012-5-12 14:26:49 ************************************************************************ * Copyright @ 靈雨工作室 2012. All rights reserved. ************************************************************************/ using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class Default2 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } }
修改其他的模板按照以上修改方法即可,此處不再詳述。