我创建了一个 ItemTemplate 项目。我想将其安装到自定义文件夹。当我手动将从项目构建的 zip 文件添加到 ItemTemplates 中的命名文件夹时,这可以正常工作。
我现在使用两个项目,原始的 ItemTemplate 项目和一个 VSIX 项目进行安装。
我面临的问题是,当使用 VSIX 项目安装模板时,安装路径会在我的自定义文件夹中添加一个名为 CSharp 的额外文件夹。仅当我将 ItemTemplate 项目作为项目添加到 VSIX 项目时才会发生这种情况。如果我将 ItemTemplates 项目的输出(zip 文件)添加到 VSIX 项目,则模板位于正确的位置。
已使用 vsixmanifest 中的 Assets 部分将 ItemTemplate 项目添加为 VSIX 项目中的参考项目。下图中的属性是 VSIX 项目的引用部分中 ItemTemplate 项目的属性。
如果有帮助,这是我在 ItemTemplate 项目中使用的 vstemplate 文件。
<?xml version="1.0" encoding="utf-8"?>
<VSTemplate Version="3.0.0" Type="Item" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" xmlns:sdk="http://schemas.microsoft.com/developer/vstemplate-sdkextension/2010">
<TemplateData>
<Name>Generator</Name>
<Description></Description>
<Icon>Magic.Generator.ico</Icon>
<TemplateID>Magic.Generator</TemplateID>
<TemplateGroupID>Magic</TemplateGroupID>
<ProjectType>CSharp</ProjectType>
<RequiredFrameworkVersion>2.0</RequiredFrameworkVersion>
<NumberOfParentCategoriesToRollUp>2</NumberOfParentCategoriesToRollUp>
<DefaultName>Generator.cs</DefaultName>
</TemplateData>
<TemplateContent>
<ProjectItem ReplaceParameters="false">Generator.cs</ProjectItem>
</TemplateContent>
</VSTemplate>
我正在使用 VS2017 (15.7.4) 任何帮助表示感谢,谢谢。