5

我正在創建具有Web應用程序,桌面,少數類庫和單元測試項目的多項目解決方案模板的過程。多項目解決方案模板

我建造了基本容器,並將它打包爲VSIX容器。 當我安裝了VSIX容器,我可以在我的解決方案模板在以下物理路徑的.zip文件

%APPDATA%\本地\微軟\ VisualStudio的\ 11.0 \擴展\ tbxs0hui.w2e \ ProjectTemplates \ CSHARP \ 1033 \ myprojecttemplate.zip,所以一切都很好。

但是,當我啓動Visual Studio 2012時,我看不到我的解決方案模板列在新建項目 - > Visual C#下。

我什麼時候出錯了?有什麼建議麼?

這裏是多尺度RootTemplate.vstemplate內容:

<?xml version="1.0" encoding="utf-8"?> 
<VSTemplate Version="3.0.0" Type="ProjectGroup" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" xmlns:sdk="http://schemas.microsoft.com/developer/vstemplate-sdkextension/2010"> 
<TemplateData> 
<Name>MultiProject</Name> 
<Description>MultiProject</Description> 
<Icon>MultiProject.ico</Icon> 
<ProjectType>CSharp</ProjectType> 
<RequiredFrameworkVersion>2.0</RequiredFrameworkVersion> 
<SortOrder>1000</SortOrder> 
<TemplateID>bbd7217a-8572-4edc-80ce-488cb9a347df</TemplateID> 
<CreateNewFolder>true</CreateNewFolder> 
<DefaultName>MultiProject</DefaultName> 
<ProvideDefaultName>true</ProvideDefaultName> 
</TemplateData> 
<TemplateContent>  
<ProjectCollection> 
<SolutionFolder Name="FolderName1"> 
    <SolutionFolder Name="FolderName2"> 
    <ProjectTemplateLink ProjectName="xxxxx">Children\Application1\Application1.vstemplate</ProjectTemplateLink> 
    <ProjectTemplateLink ProjectName="yyyy">Children\Application1\Application2.vstemplate</ProjectTemplateLink>   
    </SolutionFolder> 
    <SolutionFolder Name="Folder3"> 
    <ProjectTemplateLink ProjectName="zzzzzz">Children\Application3\Application3.vstemplate</ProjectTemplateLink> 
    </SolutionFolder> 
    <SolutionFolder Name="Web"> 
    <ProjectTemplateLink ProjectName="Web">Children\Web\Web.vstemplate</ProjectTemplateLink> 
    </SolutionFolder> 
</SolutionFolder>  
<SolutionFolder Name="Tests">  
    <ProjectTemplateLink ProjectName="xxxxxTest">Children\ApplicationxxxxUnitTest\ApplicationxxxxUnitTest.vstemplate</ProjectTemplateLink> 
<ProjectTemplateLink ProjectName="yyyyyTest">Children\ApplicationyyyyUnitTest\ApplicationyyyyUnitTest.vstemplate</ProjectTemplateLink> 
<ProjectTemplateLink ProjectName="zzzzzTest">Children\ApplicationzzzzUnitTest\ApplicationzzzzUnitTest.vstemplate</ProjectTemplateLink> 
<ProjectTemplateLink ProjectName="WebTest">Children\ApplicationWebUnitTest\ApplicationWebUnitTest.vstemplate</ProjectTemplateLink> 
</SolutionFolder> 
</ProjectCollection> 
</TemplateContent> 
</VSTemplate> 

安裝VSIX後,我可以看到一個名爲「多」,在VS2012.When我創建一個新項目新項目,這四個測試項目做沒有得到創建測試文件夾下。我試圖用vstemplate中的測試文件夾下的類庫替換它們,它工作正常,只有使用ProjectTypeGuid {3AC096D0-A1C2-E12C-1390-A8335801FDAB}; {FAE04EC0-301F-11D3- BF4B-00C04F79EFBC}沒有在測試文件夾下創建。

+0

你可以發佈你的extension.vsixmanifest和.vstemplate文件的內容嗎?否則,我們在這裏沒有任何工作。 – 2013-03-13 16:42:28

+0

嗨@JasonMalinowski,我已經更新了我的問題與根Vstemplate內容具有要創建項目鏈接的集合。 – 2013-03-16 20:01:57

+0

我有同樣的問題,你是如何創建模板?有兩種創建模板的方法, – 2013-07-18 07:56:02

回答

0

嘗試運行devenv /setup以便Visual Studio識別出您已經在其中放置了新模板。

反正自定義模板,我寧願建議你把.zip文件中

%DOCUMENTS%\的Visual Studio 2012 \模板\ ProjectTemplates \ Visual C#中

因爲VS本身從這裏拿起模板,你不必明確運行devenv/setup。

0

我有同樣的問題,

你是如何創建模板? 有創建模板的方法有兩種:

  1. 文件 - >導出模板..如果你做這種方式將在VS2012不工作與VSIX包
  2. 與C#項目直接創建一個模板模板(在Extensibility下)

第二種方法適用於我。