代码之家  ›  专栏  ›  技术社区  ›  Abhijeet

跨项目的Nuget包复制

  •  0
  • Abhijeet  · 技术社区  · 6 年前

    Is Nuget package copy 在.NET核心中可行? 我很担心,因为既没有project.json也没有package.config。这是否意味着手动编辑。csproj是前进的唯一途径。

    必须有更有效的方法,imho。我错过什么了吗?

    1 回复  |  直到 6 年前
        1
  •  0
  •   Mausam    6 年前

    我使用共享 Directory.Build.props 用于在.NET Core 2.0的多个项目中生成相同包的文件。因此,如果您将这个文件放在所有项目的共享文件夹中,并在创建新项目后简单地导入它,它确实节省了很多时间。

    首先创建共享 目录.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包。

    只需在下面编辑XML和更多包引用 <ItemGroup></ItemGroup> 为了你的包裹。我希望这将是更有效的解决方案。它确实为我节省了许多新的.NET核心项目的时间。您可以阅读有关自定义生成的更多信息 here .