项目A引用项目B,项目B引用外部DDL(使用NuGet恢复).DLL应该被复制到 Project A的bin文件夹(以及 Project B的DLL):

在我的例子中,当运行项目A时,我得到以下异常抛出:
无法加载文件或程序集'PostSharp,Version = 3.2.18.0,Culture = neutral,PublicKeyToken = b13fd38b8f9c99d7'或其依赖项之一.该系统找不到指定的文件.
DLL未被复制到项目A的bin中.来自Project B的所有其他外部引用都被正确复制,这对我来说很困惑.
Copy Local对于所涉及的所有引用,都设置为true.例:

我该怎么做呢?
注意:使用Visual Studio 2013.
假设我们有一个具有以下结构的解决方案:
编译Project.UI时,VS非常聪明,可以将Project.DAL.dll复制到输出目录,但是它不够聪明,我想要将Oracle.DataAccess复制到输出目录以及分发给客户端.
任何人都可以解释为什么会这样吗?是因为它在GAC中看到Oracle.DataAccess并假设客户端也会在GAC中拥有它吗?
这并不是什么大不了的事,但每次添加新的程序集引用时都有点烦人,我必须记住将其设置为复制本地并添加项目以在我的构建脚本中复制它.
我有一个引用的程序集X System.Interactive和System.Reactive一个lib文件夹.然后我有引用X的程序集Y.
在X两种,System.Interactive并且System.Reactive,"复制本地"设置为true.在Y for X'Copy Local'设置为true.
System.Reactive并且System.Interactive不在GAC中.
当我构建Y时,System.Interactive并System.Reactive没有复制到输出目录.为什么?