天天看點

Visual Studio 2008 自定義項目模闆

周末閑來沒事就琢磨了一下在VS2008裡面添加項目功能。在每個檔案上加上一些必要的版權資訊對任何一個程式員或者團隊開發多是必要的。直接在網上找了找。基本多是說預設模闆檔案位于  [InstallDirectory]:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\ItemTemplates\Web\CSharp\1033。【說明: [InstallDirectory]:就是VS2008的安裝盤符。1033表示英語。2052表示中文。】這裡面是一大堆.zip檔案,我們把需要的檔案Class.zip。解壓後修改Class.cs,在頭部加上

修改好後打包回去覆寫原來的Class.zip,然後在visual studuo的命運作下運作 devenv /setup 就可以使用了。

我試了好幾回其實多沒有成功。原來直接在[InstallDirectory]:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\ItemTemplatesCache\CSharp\Web\1033這個檔案夾下面改就好了。上面說的一大堆.zip檔案多解壓在這裡了。這樣我們直接更改[InstallDirectory]:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\ItemTemplatesCache\CSharp\Web\1033\WebClass.zip 裡面的Class.cs檔案。

成功!

下面随便把系統變量列一下

在模闆中我們可以使用“保留的模闆參數”,亦可以使用自定義模闆參數。

保留的模闆參數有如下13個,其中GUID又可以變化出十個參數(模闆參數區分大小寫):

    clrversion  公共語言運作庫 (CLR) 的目前版本。

    GUID [1-10]  用于替換項目檔案中的項目 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  目前的使用者名。

    year  以 YYYY 格式表示的目前年份。

自定義模闆參數:

    下面的示例示範如何在一個模闆中使用多個自定義參數。如果項目或項是使用下面的自定義參數從某個模闆建立而成,則将模闆檔案中 $color1$ 和 $color2$ 的所有執行個體分别替換為 Red 和 Blue。

    <CustomParameters>

        <CustomParameter Name="$color1$" Value="Red"/>

        <CustomParameter Name="$color2$" Value="Blue "/>

    </CustomParameters>

3.其它可用的參數:

    在.cs頁面使用的模闆參數:

    namespace $safeprojectname$

    public partial class $classname$ 或者

    public partial class $safeitemrootname$

    在.aspx頁面使用的模闆參數:

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="$fileinputname$.aspx.cs" Inherits="$rootnamespace$.$classname$" CodePage="936"%>

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="InfoEdit.aspx.cs" Inherits="Examples.TableOp.InfoEdit" CodePage="936"%>

    在.vstemplate中使用的模闆參數:

    <ProjectItem ReplaceParameters="true" TargetFileName="$fileinputname$.$fileinputextension$">Default.aspx</ProjectItem>

轉載于:https://www.cnblogs.com/yoyozhou/archive/2008/11/29/1343956.html

繼續閱讀