相关疑难解决方法(0)

依赖DLL未被复制到Visual Studio中的生成输出文件夹

我有一个visual studio解决方案.我在解决方案中有很多项目.有一个主要项目作为启动并使用其他项目.有一个项目说"ProjectX".它的参考被添加到主项目中.ProjectX引用了另一个不是解决方案的.NET dll(例如abc.dll).

现在这个abc.dll应该被复制到主项目的bin/debug文件夹中,但它不会被复制到那里.为什么不被复制,任何已知的原因?

.net c# dll reference visual-studio-2010

175
推荐指数
8
解决办法
14万
查看次数

引用的DLL未被复制到引用项目

这个问题可能已被多次询问过,也许我只是在使用谷歌的搜索功能以及谷歌这个问题,但我还没有找到这个问题的答案.

我目前有两个项目,项目X,项目Y和项目Z(仅包含映射)

Project X是一个FluentNhibernate项目,它包含我的sessionfactories和类似的东西.所以这也是映射加载和事物的地方(这很重要,我怀疑它可能是我遇到的问题的全部原因)

现在,在Project X中,我引用了一个使用Microsoft.SqlServer.Types.dll的程序集.

项目Y是一个使用项目X进行数据库连接的服务.

所有的probjects都可以在我的开发机器上完美地查找和运行,但是当部署到我们的服务器时,它们无法正常运行(运行时错误).错误是非常模糊的,因为它指向缺少FluentNHibernate程序集,但事实并非如此.

Procmon.exe幸运地显示代码试图加载Microsoft.SqlServer.Types.dll,因为服务器没有安装SQL Server(我的客户端不是,但它有一个管理工作室,很可能安装此.DLL以及) .

到目前为止一直很好,复制了DLL并且它工作了(耶!).

现在我想我将程序集添加到项目X以确保使用项目X将此引用复制到其他项目.这没有发生....所以我尝试将"复制本地"设置设置为true.

遗憾的是,这仍然没有将.dll复制到引用项目Y.

有没有办法让这种情况发生,或者这个Visual Studio是否聪明并且意识到Project Y不需要这个.dll因此拒绝复制它?

(由于Project Z需要实际参考,Project X加载此程序集@运行时,Z和X之间没有"硬"参考)

任何Stackoverflow天才都可以对此有所了解,因为老实说,我想知道为什么它会以这种方式运行(理想情况下是一种让它表现得像我想要的方式).

.net reference visual-studio-2010 fluent-nhibernate .net-assembly

7
推荐指数
2
解决办法
7293
查看次数