小编auX*_*auX的帖子

Visual Studio 项目将依赖项从引用的项目复制到输出中

是否可以让 Visual Studio 将引用项目的所有依赖项复制到输出路径中?

例子

在解决方案中,Project A(Library,.NET Standard)定义了一些函数,并且依赖于Library L1(通过NuGet)和Library L2(本地 .dll,引用并复制到项目)

项目 B(控制台应用程序)引用项目 A。

构建 B 时,输出文件夹包含 B 的所有直接依赖项和 A.dll. L1 和 L2 在输出中不可用。因此,该程序无法正常工作。

如何强制 VS 将 L1 和 L2 也复制到 B 的输出?

到目前为止,我发现的唯一方法是将 A 打包为 NuGet,但这似乎是不必要的开销和不舒服。我想我只是忘记了一些其他人似乎都知道的事情......

编辑(清除示例)

我的解决方案包括两个项目。

项目 MongoWrapper

  • .NET Standard 2.0 类库
  • 取决于 NuGet MongoDB.Driver 包
  • 实际使用了这个依赖(没有僵尸依赖)

项目控制台用户

  • .Net Framework 4.6.1 控制台应用程序
  • 参考 MongoWrapper 项目
  • 实际上使用 MongoWrapper

观察

调试ConsoleUser应用程序时,它会编译并启动。在运行时,当它调用MongoWrapper使用 MongoDB.Driver的方法时,应用程序崩溃,因为 MongoDB.Driver 依赖项没有复制到ConsoleUser.

如何解决这个问题?

c# visual-studio visual-studio-2017 .net-standard-2.0

3
推荐指数
1
解决办法
3659
查看次数