本文章是由機器翻譯。

ASP.NET

使用 SideWaffle 創建您自己的Visual Studio範本

Sayed Hashimi
Tyler Hughes

下載代碼示例

由於Visual Studio的新的社區版的發佈,在過去曾經速成版的開發人員現在可以使用他們老聽說的擴展。萬一你想知道,擴展是可以擴展的Visual Studio功能的外掛程式。有各種各樣的擴展可用。

我們總是尋找如何更有效地編碼,和大約一年前,我們所碰到的是稱為 SideWaffle 擴展 (sidewaffle.com)。SideWaffle 中添加新的專案範本和項範本由其他開發人員向Visual Studio,和它可以讓您創建您自己的範本和代碼片段。在本文中,我們會看看 SideWaffle,並向您展示如何創建您自己的範本和代碼片段。

為什麼要使用 SideWaffle?

如前所述,SideWaffle 會將新的專案和項範本添加到Visual Studio。你可能會想,"這如何説明我?"讓我們說你是一個自由職業者為客戶開發的 Web 網站的 Web 開發人員。也許你具體的事情,也許使用協力廠商 JavaScript 庫,如 Knockout.js,或設置特定的專案資料夾結構,為每個網站中重複。不管如何,您設置了一個專案,SideWaffle 可以把它變成一個可重複使用的範本。另外,SideWaffle 包含一個可重用的 NuGet 包,TemplateBuilder,擴展到生成範本。

創建範本包

以前創建的範本,您需要設置您的開發環境。當然,你需要的第一個專案是Visual Studio。對於本文,我們使用社區版的Visual Studio2013年 (bit.ly/1GUTLo3)。接下來,您需要Visual Studio2013 SDK (bit.ly/1NZVkD9)。最後,下載並安裝 SideWaffle 擴展從 sidewaffle.com

安裝和準備就緒的工具,開始通過打開Visual Studio,並創建一個新專案。有兩種類型的專案,您可以使用創建的範本包。首先是一個 VSPackage 專案,使您能夠在Visual Studio中添加功能,如內容功能表或功能表項目。第二個是一個 VSIX 專案,只是一個容器來存放專案檔案和資源並不能提供額外的功能。你可以找到這兩個在新建專案對話方塊中可擴充性節點下。今天,我們想要只是一個基本的範本,所以一個 VSIX 專案將工作。您可以保留預設專案名稱。

一旦創建了該專案,其清單的檔會自動打開。作者欄位是必需的因此添加您的名稱 (或公司名稱) 在這裡。說明是什麼將是Visual Studio擴展對話方塊中所示,所以一定要添加一些有用的文本。然後將該檔保存並關閉它。下一步是將 TemplateBuilder NuGet 包添加到專案中,您可以通過使用管理 NuGet 套裝程式對話方塊或封裝管理員主控台執行。

讓我們停一秒鐘現在,考慮一下在幕後。當您將 TemplateBuilder 安裝到一個專案時,在這裡是發生了什麼:

  1. 添加了對 TemplateBuilder.dll 的引用。此程式集包含可以在範本創建過程中,以及其他傭工期間使用的自訂嚮導。
  2. 修改專案檔案以導入額外的MSBuild目的檔案,允許生成過程以支援添加到生成的 VSIX 範本。因為這實現用MSBuild,您可以建立您的擴展,在持續整合服務器上和從命令列。
  3. 道具檔被添加到 Properties\template builder.props。 您可以指定節點應包含您的範本的預設葉名稱。您還可以使用此檔來控制 TemplateBuilder 的具體方面。
  4. VSIX 清單 (通常命名為 source.exten­sion.vsixmanifest) 被修改以包含生成範本的資產標籤。

與 TemplateBuilder 安裝,您可以開始創建範本。當您生成的 VSIX 專案時,TemplateBuilder 自動踢,並開始處理的範本。

向專案中添加 TemplateBuilder 完成了所有的初步要求。我們現在可以添加到當前打開的解決方案的專案範本。

創建第一個專案範本

我們要使用現有的專案,碰巧是一個通用的 ContosoASP.NETWeb 表單/MVC 專案。這個專案使用引導 3、 jQuery 和 Modernizr,將有助於加快發展我們創建一個新的專案,在基於此範本的任何時間。作為一項規則,它是一個好主意,以將其添加到解決方案後第一次運行的任何專案。這是只是預防措施,以確保工程按預期在創建範本前。所以運行此專案 (Ctrl + f5 鍵),並確保它工作。

若要創建專案範本,您需要執行以下操作:

  • 向解決方案中添加專案,並且禁用它從大樓。
  • 添加到 VSIX 專案範本的引用。
  • 將元資料檔案添加到源專案範本的資訊。

保持範本專案從正在興建任何更多的Visual Studio在此解決方案中 (還可以生成並運行此專案在其他解決方案中),組建組態下拉清單功能表上按一下並從清單中選擇組態管理員。這將打開組態管理員對話方塊。為了防止正在興建的專案,請將其取消生成列中。一旦你完成了,為調試配置,請選擇活動解決方案配置下拉清單並重複該過程為發佈配置。

可能會出現一的次,當你想要創建一個包含多個專案範本。如果你這樣一個複雜的專案的有關工作結束並到達這一步,牢記唯一應該檢查有兩個調試和發佈配置是 VSIX 專案或 VSPackage 專案,具體取決於哪一個你早些時候選擇。圖 1 停止從正在興建專案後顯示組態管理員視窗。

禁用從正在興建的調試配置
圖 1 禁用從正在興建的調試配置

接下來,您想要將 VSIX 專案連接到主專案,你會通過添加範本的引用。在 VSIX 專案上按右鍵,然後選擇添加 |從選項中添加範本引用 (SideWaffle 專案)。

將出現一個專案選擇器對話方塊。從清單中,選擇您想要為你的範本,使用的專案,並按一下 OK。這將到 VSIX 專案中進行一些更改,並將提示您重新載入該專案。你可以選擇重新載入所有的選項,然後等待 SideWaffle 來完成。

現在,讓我們將範本元資料檔案添加到 Web 專案。按右鍵您主要的專案,選擇添加 |從列出的選項的新專案。在出現添加新項對話方塊,請轉到可擴充性部分並選擇 SideWaffle 專案範本檔。您可以使用由Visual Studio賦予的預設名稱。一旦你選擇的專案範本檔項範本,請按一下添加按鈕。

專案範本檔專案將兩個新檔添加到主專案。首先,它將添加 _preprocess.xml,告訴Visual Studio在哪裡放置您的範本,當您打開新建專案對話方塊。下面是此檔的預設內容:

<?xml version="1.0" encoding="utf-8" ?>
<Preprocess>
  <TemplateInfo Path="CSharp\Web\SideWaffle"/>
  <Replacements Include="*.*" Exclude="*.vstemplate;
    *.jpg;*.png;*.ico;_preprocess.xml;_project.vstemplate.xml">
    <add key="ContosoWebFormsMvc" value="$safeprojectname$"/>
  </Replacements>
</Preprocess>

在此檔中,您可以找到以下資訊:

  • 該範本將出現在新建專案對話方塊中的節點的路徑。
  • 有關源替換的資訊。

在範本上的路徑屬性­資訊元素在新建專案對話方塊中指定的位置,該範本將出現在哪裡。

在替換元素中,您可以聲明任何應適用在該範本中的替換生成過程。你把專案名稱,將替換生成的範本中的 $safeprojectname$ 預設換。通常,這將更新命名空間聲明。通過使用 $safeprojectname$Visual Studio中使用的範本時,將使用由使用者指定的名稱更新命名空間聲明。你不是限於一個更換 ; 您可以添加多達所需。有時您可能需要修改源進行選擇獨特,以便替換不發生衝突。

現在,讓我們繼續前進到另一個檔添加到專案中,_project.vstemplate.xml,其中包含有關該範本的中繼資料。圖 2 顯示該檔,其中 ContosoWebFormsMvc 是該專案的名稱的預設內容。

圖 2 泛型 _project.vstemplate.xml 檔

<VSTemplate Version="3.0.0"
  xmlns="https://schemas.microsoft.com/developer/vstemplate/2005"
  Type="Project">
  <TemplateData>
    <Name>Your name here</Name>
    <Description>Project description here</Description>
    <DefaultName>ContosoWebFormsMvc</DefaultName>
    <ProjectType>CSharp</ProjectType>
    <ProjectSubType></ProjectSubType>
    <SortOrder>1000</SortOrder>
    <CreateNewFolder>true</CreateNewFolder>   
    <ProvideDefaultName>true</ProvideDefaultName>
    <LocationField>Enabled</LocationField>
    <EnableLocationBrowseButton>true</EnableLocationBrowseButton>
    <Icon>sw-file-icon.png</Icon>
    <!-- Indicates how many parent folders this item template should appear in -->
    <NumberOfParentCategoriesToRollUp>1</NumberOfParentCategoriesToRollUp>
  </TemplateData>
  <TemplateContent>
    <Project TargetFileName="ContosoWebFormsMvc.csproj"
      File="ContosoWebFormsMvc.csproj"
      ReplaceParameters="true">     
    </Project>
  </TemplateContent>
</VSTemplate>

這是一個標準的.vstemplate 檔 ; 您可以找到有關在該檔的引用 bit.ly/18T090m。範本構建過程,從專案檔案將合併到此操作以創建用於範本的最後.vstemplate 檔。有幾個專案,此處需要注意。您應該更新在 TemplateData 下的以下元素:

  • 名稱:在新建專案對話方塊中所示,這是範本的您的名稱。
  • 描述:這是專案的您選擇範本時,在右邊的新建專案對話方塊顯示的描述。
  • DefaultName:這是正在創建的新專案的預設名稱。號碼將自動追加到該基於目錄的內容。
  • 排序次序:這決定對其他範本的範本的位置。這必須是 10 的倍數 ; 較低的號碼,越高專案則在Visual Studio進行排序。
  • NumberOfParentCategoriesToRollup:這就決定了多少的父節點,該範本將顯示在其中。

您還應仔細檢查項目標記上的 TargetFileName 和檔案屬性的值。這些應匹配的專案在磁片上的名稱。當 TemplateBuilder 處理此檔時,最後.vstemplate 檔將合併專案中列出的原始檔案。如果您需要特殊處理的任何特定的檔,您可以列出那些在專案元素之下。請參閱.vstemplate 參考以前聯繫在一起。

現在,您已經自訂了兩個 _preprocess.xml 和。 vstemplate.xml 檔,這是時間來測試該範本。請確保 VSIX 專案配置為Visual Studio中的啟動專案,然後按 Ctrl + F5。這將啟動的Visual Studio,實驗的實例,您的專案範本將自動載入。打開新建專案對話方塊。如果你去了您的 _preprocess.xml 檔中設置的位置,您應該看到您新創建的範本。勇往直前,創造一個新的專案,使用您的新範本,對它進行測試。確保一切都按預期方式工作。

如果一切工作正常,祝賀的順序,您只是創建您的第一個專案範本。如果您想要安裝此範本或與他人分享、 去你的 bin 資料夾中查找要安裝的 VSIX 檔。如果你或你的團隊計畫分享您的專案,通過一個 Git 倉庫,還有一個額外的步驟,您需要上傳之前要做到。

當你創建一個 VSIX 或 VSPackage 的專案,Visual Studio用的 StartProgram 和 StartArguments 標記的值來更新您的專案檔案。使用這些值以確保 f5 鍵與 Ctrl + F5 正常工作。然而,只有在每使用者基礎上配置這些更改。將您的專案添加到您的回購時,Visual Studio並不包含這些更改。他們是在不簽入,.user 檔中保存,所以當另一個使用者打開的解決方案,並嘗試實驗實例中運行該專案,它可能不工作。要解決此問題,簡單地打開您的專案.csproj 檔並添加以下行前夕第一次的屬性組的結尾:

<StartProgram Condition=
    " '$(StartProgram)'=='' ">
    $(DevEnvDir)\devenv.exe
  </StartProgram>
  <StartArguments Condition=
    " '$(StartArguments)'=='' ">
    /rootsuffix Exp</StartArguments>

現在運行該專案再次只是為了確保沒有搞砸。如果它按預期方式工作,你準備好要將該專案添加到您的 Git 存儲庫和大家一起分享。

您剛才創建Visual Studio擴展,包含一個單一的專案範本。你可以重複此過程以在您的擴展中包含附加的範本。還有中擴展範本的數量沒有限制。你可以與別人分享您的工作範本,以便他們可以試一試。要做到這一點你需要分發的.vsix 檔,在 bin 資料夾中。

如果你想要讓您的擴展可公開獲得,你可以將它上載到Visual Studio畫廊 bit.ly/115mBzm。如果您的擴展中包含多個範本 (專案或項範本),畫廊不會今天接受那些擴展。而不是直接上傳,您可以上載這些副檔名為Visual Studio畫廊中的一個環節。如果你這樣做,你需要將.vsix 檔放到一個公開可用的 URL。您可以使用 vsixgallery.com 主辦的.vsix 檔,你可以使用它來主機夜間生成。您可以輕鬆地自動發佈到夜間生成 vsixgallery.com 使用 Windows PowerShell 或 C#。

我們討論了創建專案範本的基礎知識。有其他方案,例如,使用自訂嚮導和更多的多專案範本。你可以看看 SideWaffle wiki 在 GitHub 上的詳細資訊。現在是時候繼續前進到專案範本。

添加項範本

除了允許您創建您自己的專案範本,SideWaffle 給你創建您自己的專案範本的能力。我們將添加到我們剛剛創建的擴展專案。

我們前面提到的引導 3、 jQuery 和 Modernizr 使用的專案。一旦創建基本專案,每當我們想要創建新的頁面,我們必須手動創建一個新的 HTML 檔案,包括所有 CSS 和 JavaScript 檔的 Web 網站。它將創建一個自訂專案範本,這樣對我們來說很高興。

幸運的是,TemplateBuilder 處理專案範本和項範本相同的方式,為了保持一致的工作與兩個,所以一些創建項範本的步驟都是相同那些我們已經沒有為專案範本。範本生成過程中專案和專案範本中以同樣的方式進行本質上的處理。如果你開始一個新專案,請確保首先添加 TemplateBuilder NuGet 套裝程式。

接下來,創建一個名為 ItemTemplates 裡面 VSIX 專案資料夾。如中所示圖 3,這是存儲所有的項範本的資料夾。

您的範本Will顯示在 Web 資料夾中
圖 3 您的範本Will顯示在 Web 資料夾中

直接在 ItemTemplates 資料夾下創建目錄為您的專案範本檔。ItemTemplates 的第一個子級的名稱將是,該範本將出現在預設情況下節點。例如,在圖 3,您可以看到我們創建 Web 資料夾,這樣該資料夾中的範本將出現在 Visual C# \Web 或Visual Basic\Web 下為VB或類似的其他語言。您還可以使用 _preprocess.xml 來改變這一點,但對於此示例,我們會將所有專案範本都放在 Web 資料夾下。

現在讓我們來創建我們的第一個專案範本。為每個專案範本,我們將創建一個獨特的資料夾下 Web,然後添加我們第一次的專案範本,引導的基本範本。若要開始,請創建一個新資料夾下 Web 命名引導 3 基本範本。此範本將包含兩個 HTML 檔案 (HTMLPage1.html 和 HTMLPage2.html),所以將它們放置到一個名為視圖資料夾。對於此示例,您可以使用中的內容圖 4,其中被從引導 3 文檔 bit.ly/1iKHGX3,為這兩個檔。

圖 4 基本 HTML5 引導範本

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>Basic Bootstrap Template</title>
  <link href="css/bootstrap.min.css" rel="stylesheet">
  <!-- HTML5 shim and Respond.js for IE8 support of -->
  <!-- HTML5 elements and media queries -->
  <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
  <!--[if lt IE9]>
  <script src=
    "https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
  <script src=
    "https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
  <![endif]-->
</head>
<body>
  <h1>Hello, world!</h1>
  <script src=
    "https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js">
    </script>
  <script src="js/bootstrap.min.js"></script>
</body>
</html>

添加用於創建該範本的原始檔案之後,我們將添加檔包含有關專案範本的中繼資料。要做到這一點,引導 3 基本範本資料夾上按一下滑鼠右鍵,並選擇添加新項。如中所示圖 5,選擇可擴充性節點下的 SideWaffle 專案範本。

SideWaffle 項範本位於可擴充性節點的添加新項對話方塊
圖 5 SideWaffle 項範本位於可擴充性節點的添加新項對話方塊

在名稱文字方塊中的值是在這裡忽略,因為這些檔的硬編碼檔案名。當您使用 SideWaffle 專案範本時,你得到一個名為定義的新資料夾中的四個檔 (請參閱圖 6)。這些四個檔是 CSharp.vstemplat-、VB.vstemplat-、 Web.csharp.vstemplat 和網路。VB.vstemplat,對應于頂級的語言和專案支援。CSharp.vstemplate 用於在 Visual C# 對於 C# 專案節點下將顯示的範本。VB.vstemplate 用於將顯示下Visual Basic在新建專案對話方塊中的範本。這兩個 Web 檔將顯示為 Web 專案範本。請注意若要顯示您的範本,你需要從 CSharp.vstemplat-的副檔名更改為 CSharp.vstemplate。 您可以刪除的檔,在其中你不感興趣。如中所示圖 6,我們會保持所有四個,將副檔名更改為.vstemplate。

SideWaffle 專案範本添加定義資料夾和四個 vstemplate 檔
圖 6 SideWaffle 專案範本添加定義資料夾和四個 vstemplate 檔

現在,我們需要編輯要在範本中,包括兩個 HTML 原始檔案中,所以我們會將一些專案項元素添加到 CSharp.vstemplate 檔 TemplateContent 元素下的.vstemplate 檔。檔的內容應該看起來像什麼顯示在圖 7

圖 7 示例 _project.vstemplate.xml 檔具有多個檔添加到專案範本

<VSTemplate Version="3.0.0"
  xmlns="https://schemas.microsoft.com/developer/vstemplate/2005" Type="Item">
  <TemplateData>
    <ProjectType>CSharp</ProjectType>
    <DefaultName>Bootstrap 3 Basic Template.txt</DefaultName>
    <Name>Bootstrap 3 Basic Template</Name>
    <Description>A basic HTML5 template using Bootstrap 3</Description>   
    <Icon>icon.png</Icon>
    <NumberOfParentCategoriesToRollUp>1</NumberOfParentCategoriesToRollUp>
  </TemplateData>
  <TemplateContent>
    <References />
    <ProjectItem TargetFileName="View/HTMLPage1.html" >
      View/HTMLPage1.html</ProjectItem>
    <ProjectItem TargetFileName="View/HTMLPage2.html" >
      View/HTMLPage2.html</ProjectItem>
  </TemplateContent>
</VSTemplate>

正如你所看到的我們添加了兩個專案­專案對應于創建的兩個檔的條目。此元素的值指向磁片上的檔的範本的內容在哪裡。TargetFileName 的值將決定時調用新項對話方塊中顯示的檔的名稱。

一旦您添加項範本並包含您的檔,您可以測試專案範本。像上次一樣,按 Ctrl + F5 以打開實驗實例的Visual Studio,然後創建或打開一個樣例專案並試用您的範本。

接下來,我們將討論片段,但我想首先一個簡短的說明替換。在專案範本部分中,您看到了如何 _preprocess.xml 可用於在範本生成過程中更新專案的內容。如果您需要執行任何替換為項範本,您可以使用相同的技術。與專案範本一樣我們已經介紹了基本的創建項範本。還有一大堆的我們還沒到地面 — — 使用自訂的嚮導,將圖示嵌入資源,作為嵌套檔和更多。有關這些主題的資訊,你可以請參閱標準Visual Studio範本的現有內容。你可以在 SideWaffle GitHub 專案頁面上還看 wiki。

如何添加程式碼片段

我們都有我們經常在我們的專案中使用的代碼的片段。如果你一直在想如果有一個辦法讓Visual Studio來跟蹤您最喜愛的片段,你很幸運。就像之前那樣,通過創建一個 VSIX 專案和更新 source.extension.vsixmanifest 的作者和描述欄位出發。

若要讀取您的程式碼片段檔的Visual Studio,你需要創建一個資料夾結構,它承認。圖 8顯示的結構,是否你是來創建每種程式設計語言的程式碼片段。

所示的資料夾被自動識別由Visual Studio
圖 8 所示的資料夾被自動識別由Visual Studio

一旦你創造了你需要的資料夾,您可以向程式碼片段的各自語言的 SideWaffle 資料夾添加您的程式碼片段檔。當您添加的每個檔,按一下該檔,看看它生成的操作,在屬性視窗中。每個檔應該有其生成操作屬性設置為內容,所以當它建成Visual Studio將自動在 VSIX 專案中包括該檔。

接下來,您需要在您的專案的根目錄中添加套裝程式定義檔。某些登錄機碼將設置的.pkgdef 檔,允許您使用程式碼片段的最後一步添加。因為Visual Studio不來與.pkgdef 檔的專案範本,您會創建一個文字檔,並把它改名,使用.pkgdef 副檔名。您可以命名該.pkgdef 檔任何你所喜歡的但為了簡單起見,我們叫我們 snippets.pkgdef。 如中所示圖 9,不同的登錄機碼需要更新,供您使用的每種語言。

圖 9 套裝軟體定義檔包含每個語言的註冊表資訊

// ---------------------- SNIPPETS ----------------------
// Visual Basic
[$RootKey$\Languages\CodeExpansions\Basic\Paths]
"My Snippets"="$PackageFolder$\Snippets\VisualBasic\My Snippets"
// C++
[$RootKey$\Languages\CodeExpansions\C/C++\Paths]
"My Snippets"="$PackageFolder$\Snippets\C++\My Snippets"
// C#
[$RootKey$\Languages\CodeExpansions\CSharp\Paths]
"My Snippets"="$PackageFolder$\Snippets\CSharp\My Snippets"
// CSS
[$RootKey$\Languages\CodeExpansions\CSS\Paths]
"My Snippets"="$PackageFolder$\Snippets\CSS\My Snippets"
// HTML
[$RootKey$\Languages\CodeExpansions\HTML\Paths]
"My Snippets"=""$PackageFolder$\Snippets\HTML\My Snippets"
// JavaScript
[$RootKey$\Languages\CodeExpansions\JavaScript\Paths]
"My Snippets"="$PackageFolder$\Snippets\JavaScript\My Snippets"
// SQL
[$RootKey$\Languages\CodeExpansions\SQL_SSDT\Paths]
"My Snippets"="$PackageFolder$\Snippets\SQL\My Snippets"
// XML
[$RootKey$\Languages\CodeExpansions\XML\Paths]
"My Snippets"="$PackageFolder$\Snippets\XML\My Snippets"

之前您可以測試您的新程式碼片段的最後一步是註冊的.pkgdef 檔。打開 source.extension.vsixmanifest 檔,切換到資產選項卡並按一下標籤為新的按鈕。添加新資產對話方塊應出現,為您提供幾個選項。如中所示圖 10,選擇 Microsoft.VisualStudio.VsPackage 的資產類型。

Visual Studio註冊套裝程式定義檔
圖 10 Visual Studio註冊套裝程式定義檔

接下來,選擇檔案系統上的檔,作為源類型。這將導致對話方塊中,要擴展,使您能夠流覽到所創建的.pkgdef 檔。選擇.pkgdef 檔並按一下確定。

你現在準備好測試您的程式碼片段。和以前一樣,擊中 Ctrl + F5 以打開Visual Studio實驗實例。然後打開早些時候用於測試該專案,並導航到工具 |程式碼片段管理器。如果一切都正確載入,你就完了。

到目前為止我們所看到的現在在 SideWaffle 的主要好處:專案範本和項範本和代碼片段。下一個是什麼?

開發團隊目前正在對動態範本功能我們希望已準備好在下一個版本的 SideWaffle。這將使創建和維護範本要簡單得多。這個想法是你可以將你的範本發佈到一個 git 存儲庫或網路資料夾和與朋友和同事共用它們。然後,您可以配置 SideWaffle 去接從遠端位置的範本。最終使用者將能夠控制如何經常檢查有更新。要跟上此功能,請訪問動態範本頁面 bit.ly/18DepKM

總結

如你所見這篇文章中,創建您自己的範本是非常簡單的。現在,你知道如何做到這一點,你可以告訴你的朋友和同事你多少時間就用 SideWaffle 保存。請記住,與社區共用您的範本包時你總是歡迎將它們上傳到Visual Studio畫廊,和 vsixgallery.com 始終是可用的如果你需要它。如果你想要與他人共用您自己的範本,通過 SideWaffle,給我們在 GitHub 上拉請求。現在,開始創建您的範本包,並讓我們知道是否你需要任何説明。


Tyler Hughes 是近年畢業的傑克遜維爾州立大學在那裡他學習電腦資訊系統.他業餘開發人員已經五年,目前是 SideWaffle 核心開發團隊的一部分。

Sayed Ibrahim Hashimi 是Visual StudioWeb 團隊在微軟高級專案經理。他寫了幾本書在微軟技術上的,是造物主的 SideWaffle 和 TemplateBuilder,以及 OmniSharp 的共同創造者。