Nuget跨项目复制包

时间:2018-07-13 04:58:54

标签: .net-core

Is Nuget package copy在.Net Core中可行吗? 我很担心,因为没有project.json和package.config。这是否意味着手动编辑.csproj是前进的唯一方法。

必须要有更有效的方法,恕我直言。我想念什么吗?

1 个答案:

答案 0 :(得分:0)

我使用共享的Directory.Build.props文件在.NET Core 2.0的多个项目中构建相同的程序包。因此,如果将此文件放在所有项目的共享文件夹中,然后在创建新项目后简单地将其导入,则确实会节省很多时间。

首先创建一个共享的Directory.Build.props文件。下面,我为我的所有项目添加NLog包。文件的样本内容:

<Project>
  <ItemGroup>
    <PackageReference Include="NLog" Version="4.5.6" />
    <PackageReference Include="NLog.Web.AspNetCore" Version="4.5.4" />
  </ItemGroup>
</Project>

现在,通过右键单击项目1>添加>现有项> Directory.Build.props,将此文件导入到项目的根目录。对其他项目重复相同的步骤;项目2,项目3等。请注意,当您将文件分别添加到项目中时; Directory.Build.props文件中的NLog软件包会自动作为Nuget软件包添加。

只需在<ItemGroup></ItemGroup>下为您的软件包编辑XML和更多的软件包引用。希望这对您来说是更有效的解决方案。这无疑为我节省了很多新的.NET Core项目时间。您可以阅读有关自定义版本here的更多信息。