Jestem w trakcie tworzenia wielo-projektowego szablonu rozwiązania z aplikacją internetową, pulpitem, kilkoma bibliotekami klas i projektem testów jednostkowych.Szablon rozwiązania dla wielu projektów
Zbudowałem podstawowy pojemnik i zapakowałem go jako pojemnik VSIX. Po zainstalowaniu pojemnika VSIX, mogę plik .zip z mojego szablonu rozwiązanie w następującej ścieżce fizycznej
% AppData% \ Local \ Microsoft \ VisualStudio \ 11.0 \ Extensions \ tbxs0hui.w2e \ ProjectTemplates \ CSharp \ 1033 \ myprojecttemplate.zip, więc wszystko jest w porządku.
Ale po uruchomieniu Visual Studio 2012, nie mogłem zobaczyć szablon mojego rozwiązania wymienione w Nowy projekt -> Visual C#.
Kiedy się mylę? Jakieś sugestie?
Oto treść Multisolution 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>
Po zainstalowaniu VSIX, widzę nowy projekt o nazwie „MULTIPROJECT” w VS2012.When tworzę nowy projekt, cztery projekty badawcze robi nie zostanie utworzony w folderze Tests. Próbowałem zastąpić je biblioteką klas w folderze Tests w vstemplate, działa dobrze, tylko projekty testów jednostkowych z ProjectTypeGuid {3AC096D0-A1C2-E12C-1390-A8335801FDAB}; {FAE04EC0-301F-11D3- BF4B-00C04F79EFBC} nie są tworzone w folderze Tests.
Czy możesz gdzieś umieścić zawartość plików extension.vsixmanifest i .vstemplate? W przeciwnym razie nie mamy tu nic do roboty. –
Witam @JasonMalinowski, zaktualizowałem swoje pytanie z treścią Root Vstemplate, która ma kolekcję linków do projektów, które mają zostać utworzone. –
Miałem ten sam problem, w jaki sposób tworzysz szablony? Istnieją dwa sposoby tworzenia szablonu, –