Web类别中的Visual Studio项目模板

Bid*_*dou 8 .net templates visual-studio visual-studio-templates vsix

我创建了一个VSIX Project(使用Visual Studio Extensibility)引用a C# Project Template; 它看起来像这样:

<TemplateData>
    <Name>...</Name>
    <Description>...</Description>
    <Icon>...</Icon>
    <ProjectType>Web</ProjectType>
    <ProjectSubType>CSharp</ProjectSubType>
    <TemplateGroupID>Web</TemplateGroupID>
    <DefaultName>WebApplication</DefaultName>
</TemplateData>
<TemplateContent>
    <ProjectCollection>
        <ProjectTemplateLink ProjectName="My Web Application">
            Projects\WebApplication\ProjectTemplate.vstemplate
        </ProjectTemplateLink>
        <ProjectTemplateLink ProjectName="My Windows Library">
            Projects\Library\ProjectTemplate.vstemplate
        </ProjectTemplateLink>
    </ProjectCollection>
</TemplateContent>
Run Code Online (Sandbox Code Playgroud)

一切都按预期工作,但我Project Template总是出现在Visual C#Visual Studio New Project窗体的默认根类别中.

我想把它放在里面Web category.

在此输入图像描述

注意:

<ProjectType>CSharp</ProjectType>
<ProjectSubType>Web</ProjectSubType>
Run Code Online (Sandbox Code Playgroud)

=>模板出现在默认的根类别中

<ProjectType>Web</ProjectType>
<ProjectSubType>CSharp</ProjectSubType>
Run Code Online (Sandbox Code Playgroud)

=>模板不可见!

Dav*_*ner 13

您需要在Visual Studio解决方案资源管理器中设置.vstemplate文件的"类别"属性.

在此输入图像描述

  • @Saysmaster,此属性未存储在.vstemplate文件中.它存储在包含.vstemplate文件的项目文件中.寻找一个`<OutputSubPath>`节点.值得注意的是,如果你想在类别名称中有空格,你需要输入'%20`而不是空格.例如,`Foo%20Bar`将在Visual Studio中显示为"Foo Bar". (2认同)