首页 > 解决方案 > 有人可以告诉我如何将文件包含在 dot net core 的多项目模板中吗?

问题描述

我的开源项目 DataTier.Net ( https://github.com/DataJuggler/DataTier.Net ) 正在升级以使用 DotNetCore。

更新我的 Nuget 包后一切正常,但是当我更新安装到 Visual Studio 中的多项目模板时,所有文件夹都已创建,但没有包含任何文件。

我承认我从我的 .NetFramework 项目模板中复制了我的 .vstemplate 文件,因为我什至没有将“导出模板”视为 DotNetCore 的菜单选项。

我确实意识到项目包括 dotnetcore 中的所有文件,但是我需要的文件的命名空间的替换参数必须发生,所以我被卡住了。

这是 .vstemplate 文件之一:

<VSTemplate Version="3.0.0" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" Type="Project">
  <TemplateData>
    <Name>DataGateway</Name>
    <Description>Create a new DataGateway which is part of a DataTier.Net.Core class library.</Description>
    <ProjectType>CSharp</ProjectType>
    <ProjectSubType>
    </ProjectSubType>
    <SortOrder>1000</SortOrder>
    <CreateNewFolder>true</CreateNewFolder>
    <DefaultName>DataGateway</DefaultName>
    <ProvideDefaultName>true</ProvideDefaultName>
    <LocationField>Enabled</LocationField>
    <EnableLocationBrowseButton>true</EnableLocationBrowseButton>
    <Icon>__TemplateIcon.ico</Icon>
  </TemplateData>
  <TemplateContent>
    <Project TargetFileName="DataGateway.csproj" File="DataGateway.csproj" ReplaceParameters="true">
      <ProjectItem ReplaceParameters="true" TargetFileName="Gateway.cs">Gateway.cs</ProjectItem>
      <ProjectItem ReplaceParameters="true" TargetFileName="ListHelper.cs">ListHelper.cs</ProjectItem>
    </Project>
  </TemplateContent>
</VSTemplate>

dot net core 的模板完全改变了吗?我搜索了谷歌并找不到答案。

标签: c#.net-core

解决方案


模板已经完全改变了,这可能是最好的,因为旧方法很痛苦,但至少我知道该怎么做。

好消息是他们现在使用 Nuget 包,所以这对每个人来说都更容易:

https://docs.microsoft.com/en-us/dotnet/core/tutorials/cli-templates-create-project-template

这使用了一个命令行,我宁愿有一个 GUI,但如果它有效,它就可以工作。

我将尽快发布有关我学习如何使用新模板的进度的更新。


推荐阅读