如何使用 Nuget 从依赖的依赖中获取内容文件

问题描述

假设我有 2 个包:Car.nupkgWheel.nupkgCar 项目包含对 Wheel 项目的引用,但 Car 项目中仅安装了 AutoFactory 包。

Wheel.nupkg 包含一个 connections.json 文件,用于定义例如从何处获取轮辋,Car.nupkg 包含一个 color.config 文件,用于定义汽车的颜色.

这两个文件中都有占位符,并且在部署之前它们将被替换为其他值,因为您从每个环境的不同位置获取轮辋,并且汽车颜色也会因环境而异,以便我们更容易识别在哪里汽车来自。

因此,在部署时,AutoFactory 需要其输出目录中存在的两个文件才能正确执行其工作。

目前,Wheel.csproj 有这个:

  <ItemGroup>
    <Content Include="connections.json" Pack="true">
      <copyToOutputDirectory>PreserveNewest</copyToOutputDirectory>
      <PackagecopyToOutput>true</PackagecopyToOutput>
    </Content>
  </ItemGroup>

Car.csproj 有这个:

<ItemGroup>
    <Content Include="color.config" Pack="true">
      <copyToOutputDirectory>PreserveNewest</copyToOutputDirectory>
      <PackagecopyToOutput>true</PackagecopyToOutput>
    </Content>
  </ItemGroup>

以现在的方式,当我在 Car 中安装 AutoFactory 软件包时,content 和 contentfiles 文件只包含 color.config 文件。 >

我需要如何更改 Wheel.csproj(或 Car.csproj)以使其内容也最终出现在输出文件夹中。

这很重要,因为有很多“工厂”没有直接引用 Wheel 包,我们只是引入这个 connections.json 文件,因为比方说,我们停止了生产我们自己的轮辋并决定从其他地方获得它。所以理想情况下,我不想去所有不同的工厂直接安装 Wheel 包,特别是因为未来的汽车可能没有轮子(!?)或者 AutoFactory 不会总是制造东西带轮子和直接参考建议工厂直接需要轮子包。

对不起,如果我的例子没有意义,但这是我能想到的最好的。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)