У меня есть требование для создания пользовательского шаблона проекта с использованием vsix и IWizard. Мастер покажет три флажка. например (бот, вкладка, чат). Выходное решение должно иметь проекты только для флажков, выбранных в мастере, т. Е. Если выбраны и Bot, и Tab, тогда в решении будут созданы проекты Bot.csproj и Tab.csproj. Если выбраны все три из них, должны быть созданы все проекты. Сейчас он генерирует все проекты независимо от выбора, потому что нет способа добавить условия в самый верхний файл .vsTemplate. Ниже vsTemplate, который я имею в коде, есть ли способ, которым я могу этого достичь?
Короче говоря, когда мы создаем проект asp. net mvc, если мы выбрали " Флажок «Тесты», тогда он также сгенерирует проект модульного тестирования. Если мы не выбрали, это не генерирует. У меня аналогичное требование.
<?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>My App (C#)</Name>
<Description>A project for creating a chat application using C#</Description>
<Icon>Chat.ico</Icon>
<ProjectType>CSharp</ProjectType>
<LanguageTag>csharp</LanguageTag>
<PlatformTag>C#</PlatformTag>
<RequiredFrameworkVersion>2.0</RequiredFrameworkVersion>
<SortOrder>1000</SortOrder>
</TemplateData>
<TemplateContent>
<ProjectCollection>
<ProjectTemplateLink ProjectName="Tab">
TabProject\Tab.vstemplate
</ProjectTemplateLink>
<ProjectTemplateLink ProjectName="Bot">
BotProject\Bot.vstemplate
</ProjectTemplateLink>
<ProjectTemplateLink ProjectName="Chat">
ChatProject\Chat.vstemplate
</ProjectTemplateLink>
</ProjectCollection>
</TemplateContent>
</VSTemplate>