Шаблоны Visual Studio - добавление дополнительных уже существующих проектов - PullRequest
12 голосов
/ 08 января 2010

Я работаю над шаблоном Visual Studio, в котором сгенерированный проект опирается на несколько ссылок, которые, как оказалось, являются другими проектами, находящимися под контролем исходного кода.

Вопрос в том, как мне установить это в моем шаблоне ProjectGroup? Например, если у меня уже есть существующий проект в «C: \ Stuff \ MyUtilityProject \ Utility.csproj» с одним файлом (Tools.cs), который я хочу добавить в свой шаблон, как мне поступить?

Вот как выглядит моя vstempalte. К вашему сведению - у меня нет проблем с ProjectTemplateLink или созданием папки Solution, просто я добавляю уже существующий Utility.csproj в мое новое решение:

Заранее спасибо!

<VSTemplate Version="2.0.0" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" Type="ProjectGroup">
  <TemplateData>
    <Name>MySampleSolution</Name>
    <Description>My Test Project</Description>
    <ProjectType>CSharp</ProjectType>
    <Icon>__TemplateIcon.ico</Icon>
  </TemplateData>
  <TemplateContent>
        <ProjectCollection>
            <SolutionFolder Name="Content">
                <Project File="C:\Stuff\MyUtilityProject\Utility.csproj">
                    <ProjectItem>Tools.cs</ProjectItem>
                </Project>
            </SolutionFolder>
        <ProjectTemplateLink ProjectName="MyWorkingTemplate">
            MyWorkingTemplate\MyTemplate.vstemplate
        </ProjectTemplateLink>
        </ProjectCollection>
  </TemplateContent>
</VSTemplate>

Ответы [ 3 ]

1 голос
/ 10 июля 2012

Единственный обходной путь, который я знаю в Visual Studio 2010 (Ultimate) , - это создание проекта / решения из вашего шаблона, добавление файлов *. Cs вам нужно, а затем снова экспортируйте решение с помощью мастера экспорта шаблонов.

Для имеющейся у вас библиотеки вы можете создать шаблон элемента вместо шаблона проекта / решения - это позволяет добавить его с помощью add -> new item из контекстного меню в обозреватель решений Visual Studio.

Чтобы создать шаблон элемента , откройте свое решение, затем используйте Файл -> Экспорт шаблона ... и выберите шаблон элемента в качестве типа экспорта после Откроется диалоговое окно мастера.

Убедитесь, что в мастере установлен флажок «импорт», иначе он не будет установлен автоматически после его создания.

1 голос
/ 28 декабря 2012

Вы можете разместить свой собственный канал NuGet (или использовать возможности NuGet из TeamCity или частный MyGet канал. Затем вы просто нужно упаковать ваш служебный проект в пакет NuGet и добавить его в шаблон вашего проекта, как описано здесь: http://docs.nuget.org/docs/reference/packages-in-visual-studio-templates

0 голосов
/ 08 января 2010

Это то, что вы ищете:

Visual Studio - программно настраиваемое решение для управления исходным кодом

EDIT:

Я смотрел вокруг, увидев этот довольно интересный проект, он, кажется, экспортирует решения, а не проекты, которые могут быть или не быть лучшей идеей. Мне особенно нравится часть в конце, которая говорит, что она уберет контроль над исходным кодом, чтобы вы получили чистый проект. Я знаю, что это не точный ответ, который вы хотели бы, но стоит посмотреть;)

http://flux88.com/blog/exporting-visual-studio-solutions-with-solutionfactory/

...