gpt4 book ai didi

asp.net-core - 应使用哪些设置来获取与 .NET Core 项目一起使用的自定义 ItemTemplate?

转载 作者:行者123 更新时间:2023-12-02 02:10:51 25 4
gpt4 key购买 nike

我有一个 Visual Studio 2017 项模板扩展,当前正在处理 ASP.NET 项目。它具有以下 .vstemplate:

<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>Angular Component</Name>
<Description>Files for an Angular component</Description>
<RequiredFrameworkVersion>4.5</RequiredFrameworkVersion>
<Icon>AngularComponentTemplate.ico</Icon>
<ProjectType>CSharp</ProjectType>
<ProjectSubType>Web</ProjectSubType>
<NumberOfParentCategoriesToRollUp>1</NumberOfParentCategoriesToRollUp>
</TemplateData>
<TemplateContent>
<ProjectItem ReplaceParameters="true" TargetFileName="$fileinputname$.component.html">base.component.html</ProjectItem>
<ProjectItem ReplaceParameters="true" TargetFileName="$fileinputname$.component.ts">base.component.ts</ProjectItem>
</TemplateContent>
</VSTemplate>

此外,引用它的 VSIX 文件具有

ItemTemplates\CSharp\Web

设置项目的“VSIX 子路径”属性。

但是,我无法让此模板出现在 ASP.NET Core 项目中。我尝试在 vstemplate 中使用它:

<ProjectType>DNX</ProjectType>
<TemplateGroupID>SharedDotNetAndDotNetWeb</TemplateGroupID>

(来自 https://stackoverflow.com/a/38543920/1783619 )但它不起作用。在 Visual Stuido 2017 的发布版本中,如何让项目模板出现在 .NET Core 项目中?

最佳答案

我在为 pug 文件创建项目模板时遇到了同样的问题。

这是我所做的:

首先,我了解了库存模板是如何编写的:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\ItemTemplates\AspNetCore

这就是我的模板的外观:

<VSTemplate Version="3.0.0" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" Type="Item">
<TemplateData>
<DefaultName>page.pug</DefaultName>
<Name>Pug File</Name>
<Description>This is a basic pug file template (previously Jade)</Description>
<ProjectType>CSharp</ProjectType>
<TemplateGroupID>AspNetCore</TemplateGroupID>
<TemplateID>AspNetCore.Pug</TemplateID>
<NumberOfParentCategoriesToRollUp>2</NumberOfParentCategoriesToRollUp>
<Icon>__TemplateIcon.ico</Icon>
<PreviewImage>__PreviewImage.ico</PreviewImage>
<SortOrder>10</SortOrder>
<ShowByDefault>false</ShowByDefault>
</TemplateData>
<TemplateContent>
<References />
<ProjectItem ReplaceParameters="true">page.pug</ProjectItem>
</TemplateContent>
</VSTemplate>

需要注意的地方:ProjectType、TemplateGroupId、TemplateId(自己编写)和 NumberOfParentCategoriesToRollUp

我希望我的模板主要显示在“内容”类别中,其中包含 HTML 和 CSS 类型模板,因此我将 zip 文件放在

Visual Studio 2017\Templates\ItemTemplates\Visual C#\AspNetCore\Web\Content

我必须创建一些目录 (AspNetCore\Web\Content) 才能获得此结构。

然后,将“NumberOfParentCategoriesToRollUp”设置为 2,允许模板显示在“内容”类别中,但也可以“滚动”并显示在 Web 和 AspNetCore 类别中。

有关模板组织的更多信息:

https://learn.microsoft.com/en-us/visualstudio/ide/how-to-locate-and-organize-project-and-item-templates

完成后,打开 Visual Studio 2017 开发人员命令提示符并输入:

devenv /updateconfiguration

关于asp.net-core - 应使用哪些设置来获取与 .NET Core 项目一起使用的自定义 ItemTemplate?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44030522/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com