c# – 在我的构建输出中包含Nuget依赖项?

我正在构建一个模块化的.NET核心应用程序,它可以在运行时使用MEF加载扩展.我有2个项目,一个是我希望能够在运行时加载的库,然后我有我的主应用程序将进行加载.

我的库项目有一些Nuget依赖项.为了在运行时加载我的库,我需要在运行时在库旁边使用这些Nuget依赖项,但使用VS2017构建不包括这些Nuget DLL作为输出的一部分.

在构建库时如何获取Nuget DLL?

编辑:我已经尝试过dotnet发布和dotnet包,但这两个都让我成为一个只包含我的DLL而不是我需要的nuget DLL的nupkg文件.另外,我无法在运行时非常轻松地加载nupkg文件,这就是为什么我只想自己获得生成的程序集.

对于它的价值,这就是我的csproj的样子:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>netcoreapp1.1</TargetFramework>
    <AssemblyName>JSON.plugin</AssemblyName>
    <IncludeBuiltProjectOutputGroup>true</IncludeBuiltProjectOutputGroup>
  </PropertyGroup>

  <ItemGroup>
    <packagereference Include="Microsoft.Composition" Version="1.0.31" />
    <packagereference Include="Newtonsoft.Json" Version="10.0.3" />
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="..\..\BDDGen.Types\BDDGen.Types.csproj" />
  </ItemGroup>

</Project>

解决方法

为了使构建过程将所有引用的来自NuGet包的dll文件从缓存文件夹复制到构建输出中,请在< PropertyGroup>中设置此属性
<copyLocalLockFileAssemblies>true</copyLocalLockFileAssemblies>

相关文章

在要实现单例模式的类当中添加如下代码:实例化的时候:frmC...
1、如果制作圆角窗体,窗体先继承DOTNETBAR的:public parti...
根据网上资料,自己很粗略的实现了一个winform搜索提示,但是...
近期在做DSOFramer这个控件,打算自己弄一个自定义控件来封装...
今天玩了一把WMI,查询了一下电脑的硬件信息,感觉很多代码都...
最近在研究WinWordControl这个控件,因为上级要求在系统里,...