Замените имя файла .csproject в VSIX - PullRequest
0 голосов
/ 20 марта 2019

Я создал VSIX, который создает файл проекта с некоторыми дополнительными файлами.Замена моих файлов работает правильно, но файл моего проекта не переименован должным образом.

Краткий пример.Я создаю проект Foo.Имя сборки должно быть MY.Foo, а Projectfile также должен быть My.Foo, даже если я назвал имя проекта просто Foo.

VS: Template

 <VSTemplate Version="3.0.0" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" Type="Project">
  <TemplateData>
    <Name>ClusterTemplate</Name>
    <Description>&lt;No description available&gt;</Description>
    <ProjectType>CSharp</ProjectType>
    <ProjectSubType>
    </ProjectSubType>
    <SortOrder>1000</SortOrder>
    <CreateNewFolder>true</CreateNewFolder>
    <DefaultName>ClusterTemplate</DefaultName>
    <ProvideDefaultName>true</ProvideDefaultName>
    <LocationField>Enabled</LocationField>
    <EnableLocationBrowseButton>true</EnableLocationBrowseButton>
    <Icon>__TemplateIcon.ico</Icon>
  </TemplateData>
  <TemplateContent>
    <Project TargetFileName="My.$projectname$.csproj" File="Test.csproj" ReplaceParameters="true">
      <ProjectItem ReplaceParameters="true" TargetFileName="I$projectname$Cluster.cs">ITestCluster.cs</ProjectItem>
      <Folder Name="PrintTemplates" TargetFolderName="PrintTemplates" />
      <Folder Name="Properties" TargetFolderName="Properties">
        <ProjectItem ReplaceParameters="true" TargetFileName="AssemblyInfo.cs">AssemblyInfo.cs</ProjectItem>
      </Folder>
      <Folder Name="TemplateFactories" TargetFolderName="TemplateFactories" />
      <ProjectItem ReplaceParameters="true" TargetFileName="$projectname$Cluster.cs">TestCluster.cs</ProjectItem>
      <ProjectItem ReplaceParameters="true" TargetFileName="$projectname$RopeTarget.cs">TestRopeTarget.cs</ProjectItem>
    </Project>
  </TemplateContent>
</VSTemplate>

Фрагмент файла шаблона .csproj

<RootNamespace>MY.$safeprojectname$</RootNamespace>
<AssemblyName>MY.$safeprojectname$</AssemblyName>

Таким образом, конечным результатом является то, что Assemblyname и Namespace, а также все файлы правильно переименованы рядом с моим .csproj файлом.Он остается с моим вводом Foo.

Как переименовать файл .csproj с помощью VSIX / VSTemplate

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...