Как запретить тегу папки решения создавать каталог (папки) в решении?

Я пытаюсь создать многопроектные шаблоны. Я подписался на http://msdn.microsoft.com/en-us/library/ms185308.aspx инструкции, но со следующей структурой он создает папку для «Core» и «Web». Мне нужно добавить папки решений в качестве виртуальных папок, потому что они на самом деле не создаются в файловой системе, а проекты внутри папок решений просто находятся в той же папке, что и файл .sln.

<VSTemplate Version="2.0.0" Type="ProjectGroup"
    xmlns="http://schemas.microsoft.com/developer/vstemplate/2005">
    <TemplateData>
        <Name>DT.WhiteLabel</Name>
        <Description>Dt digital White label project</Description>
        <Icon>dt.png</Icon>
        <ProjectType>CSharp</ProjectType>
    </TemplateData>
    <TemplateContent>
        <ProjectCollection>
     <SolutionFolder Name="Core">
          <ProjectTemplateLink ProjectName="DT.Data">
              DT.Data\MyTemplate.vstemplate
          </ProjectTemplateLink>
          <ProjectTemplateLink ProjectName="DT.Services">
              DT.Services\MyTemplate.vstemplate
          </ProjectTemplateLink>
       </SolutionFolder>
       <SolutionFolder Name="Web">
          <ProjectTemplateLink ProjectName="DT.Web.MVC">
              DT.Web.MVC\MyTemplate.vstemplate
          </ProjectTemplateLink>
      </SolutionFolder>
          <ProjectTemplateLink ProjectName="DT.ExportCSV">
              DT.ExportCSV\MyTemplate.vstemplate
          </ProjectTemplateLink>  
        </ProjectCollection>
<WizardExtension>

    <Assembly>NuGet.VisualStudio.Interop, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</Assembly>
    <FullClassName>NuGet.VisualStudio.TemplateWizard</FullClassName>
</WizardExtension>
<WizardData>
  <packages  repository="extension" repositoryId="DT.WhiteLabel..7c9d41b1-2f6e-4210-9340-a5bfc00f4800">
  <package id="AutoMapper" version="2.2.0" />
  <package id="elmah.corelibrary" version="1.2.2" />
  <package id="Elmah.MVC" version="2.0.2" />
  <package id="EntityFramework" version="4.1.10331.0" />
  <package id="ICSharpCode.SharpZipLib.dll" version="0.85.4.369" />
  <package id="jQuery" version="1.5.1" />
  <package id="jQuery.UI.Combined" version="1.8.11" />
  <package id="jQuery.Validation" version="1.8.0" />
  <package id="jQuery.vsdoc" version="1.5.1" />
  <package id="Microsoft.Web.Infrastructure" version="1.0.0.0" />
  <package id="Modernizr" version="1.7" />
  <package id="Ninject" version="3.0.1.10" />
  <package id="Ninject.MVC3" version="3.0.0.6" />
  <package id="Ninject.Web.Common" version="3.0.0.7" />
  <package id="WebActivator" version="1.5.2" />
  </packages>
</WizardData>
    </TemplateContent>

</VSTemplate>

введите здесь описание изображения

Я ищу

введите здесь описание изображения

Что я получаю на данный момент введите здесь описание изображения


person Azadeh Khojandi    schedule 19.11.2012    source источник


Ответы (1)


Также пост старше 6 месяцев, я думаю, что мой ответ полезен для других людей. Я решил эту проблему с помощью мастера, в котором я создаю нужные папки решения в методе «Выполнить готово». После этого я сохраняю полные имена проектов в списке строк и удаляю их из решения. Затем я добавляю проекты в папку решения с помощью сохраненных полных имен. Это может быть сложно, но это работает ;-) Я думаю, что хорошими учебниками по созданию мастера являются http://www.bluelemoncode.com/post/2012/01/05/Creating-custom-project-and-file-template-with-wizard-for-Visual-Studio.aspx и http://www.codeproject.com/Articles/15268/How-to-Create-Your-own-Visual-Studio-Wizard

person user2086873    schedule 31.05.2013
comment
Спасибо за Ваш ответ. Я проверю это, а затем отмечу это как ответ. - person Azadeh Khojandi; 31.05.2013