多文件模板不能在Web API项目中使用,而是在类库C#Visual Studio 2017中使用

问题描述 投票:0回答:1

由于某些原因,我无法在任何WebAPI项目上看到我导出的模板(使用dotnet new webapi创建)但我可以在classlib项目中看到模板,

我的模板存储在一个压缩文件中

C:\Users\rakia\Documents\Visual Studio 2017\Templates\ItemTemplates

看起来像这样:

<VSTemplate Version="3.0.0" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" Type="Item">
  <TemplateData>
  <DefaultName>Constellation Model.cs</DefaultName>
  <Name>Constellation Model</Name>
  <Description>&lt;Aucune description disponible&gt;</Description>
  <ProjectType>CSharp</ProjectType>
  <SortOrder>10</SortOrder>
  <Icon>__TemplateIcon.ico</Icon>
</TemplateData>
<TemplateContent>
  <References />
  <ProjectItem SubType="" TargetFileName="Handlers/$fileinputname$CommandsHandler.cs" ReplaceParameters="true">Handlers/ModelCommandsHandler.cs</ProjectItem>
  <ProjectItem SubType="" TargetFileName="Handlers/$fileinputname$EventsHandler.cs" ReplaceParameters="true">Handlers/ModelEventsHandler.cs</ProjectItem>

  <ProjectItem SubType="" TargetFileName="Domain/Models/$fileinputname$.cs" ReplaceParameters="true">Domain/Models/Model.cs</ProjectItem>

  <ProjectItem SubType="" TargetFileName="Domain/Repositories/$fileinputname$Repository.cs" ReplaceParameters="true">Domain/Repositories/ModelRepository.cs</ProjectItem>
  <ProjectItem SubType="" TargetFileName="Domain/Repositories/I$fileinputname$Repository.cs" ReplaceParameters="true">Domain/Repositories/IModelRepository.cs</ProjectItem>

  <ProjectItem SubType="" TargetFileName="Controllers/$fileinputname$Controller.cs" ReplaceParameters="true">Controllers/ModelController.cs</ProjectItem>

  <ProjectItem SubType="" TargetFileName="Bus/$fileinputname$/$fileinputname$Commands.cs" ReplaceParameters="true">Bus/Model/ModelCommands.cs</ProjectItem>
  <ProjectItem SubType="" TargetFileName="Bus/$fileinputname$/$fileinputname$Events.cs" ReplaceParameters="true">Bus/Model/ModelEvents.cs</ProjectItem>

</TemplateContent>

这是我在Web API qazxsw poi中尝试创建导出模板时看到的内容

这是我在classlib enter image description here中尝试创建导出模板时看到的内容

我的第一个猜测是vstemplate文件中的ProjectType是错误的,因为VisualStudio不认为WebAPI项目是CSharp项目?但后来我不知道在项目类型中放什么,我试着把它留空而没有任何结果

c# visual-studio templates visual-studio-2017
1个回答
0
投票

通过查找ASP Core项目的类模板来解决这个问题,并找到了:

enter image description here

你仍然需要ProjectType作为CSharp,但必须添加模板组ID AspNetCore然而我现在遇到问题,因为我的模板中有太多文件,它不能与aspcore一起工作......我猜这是另一个完整的问题,不会继续这里

© www.soinside.com 2019 - 2024. All rights reserved.