2016-02-28 35 views
0

我正在寻找一种'私下'引用MSBuild项目的方法,以便它不会显示给NuGet包的用户。例如,假设我有两个库,LibFooLibBar。他们被组织在一个单一的解决方案,像这样:如何私下引用NuGet包中的另一个项目?

Foobar.sln 
| 
---- LibFoo.csproj 
| 
---- LibBar.csproj 

现在,假设LibFoo引用LibBar。当我开始构建LibFoo时,LibBar也被构建。生成的二进制文件都包含在LibFoo的输出目录中。当我将nuget pack作为NuGet包的一部分包含在目录中时,LibBar的二进制文件也包含在内。

最后,当最终用户安装LibFoo时,NuGet继续并引用包中的所有内容,,包括LibBar

有什么办法可以防止这种情况发生?

回答

2

我想这是不可能的,直接排除一个DLL,但你可以明确指定哪些程序集应引用。这反过来做你想要的,因为所有未指定的程序集将不会被添加为参考。

看一看这个section of the nuget docs

+0

太棒了,这正是我一直在寻找的。谢谢! –

+0

不客气:) –

相关问题