【问题标题】:Visual Studio Publish Not Copying All DLLs to Publish FolderVisual Studio 发布未将所有 DLL 复制到发布文件夹
【发布时间】:2016-04-19 09:39:52
【问题描述】:

我有一个 Web 项目 A,这是我的启动项目,我从这个 Web 项目发布。

A 引用另一个项目 -> B(A 有项目引用 B)

B 包含一个引用“ref.dll

当我build B时,B的所有DLL,包括“ref.dll”都被复制到A的bin文件夹中

但是,当我发布 A时,我在发布的文件夹中看不到“ref.dll”。

我在某处了解到,Visual Studio 足够智能,即使它的任何方法都没有在任何地方使用,它也不会复制 DLL。就我而言,我已验证正在使用“ref.dll”中的方法。

为什么会这样?我是否需要在 WebProject A 中明确添加对“ref.dll”的引用,以便它出现在发布文件夹中?

【问题讨论】:

    标签: visual-studio visual-studio-2012 dll visual-studio-2015 publish


    【解决方案1】:

    尝试为项目 B 中的 dll 设置 Copy Local = true。

    【讨论】:

    • 您是否尝试过删除 bin 文件夹,清理解决方案并再次重建。?如果该 dll 不在 bin 文件夹中,您会遇到什么错误?
    • 是的,我尝试删除 bin 文件夹,清理和重建。另外,在新的工作区中尝试了同样的方法。如果没有那个 DLL,就会有一些业务逻辑失败,并且在浏览器上它会向我抛出错误页面,说 DLL 丢失。当我手动复制粘贴丢失的 DLL 时,一切正常。
    • 令我惊讶的是,当我构建时,该 DLL 已成功复制到 bin 文件夹中,甚至当我在本地运行应用程序时,一切都很好。只有当我发布时,DLL 才会丢失。
    • 在发布此@AniruddhaPondhe 的任何解决方案后,我也面临同样的问题 dll 丢失
    • 如果您使用nuget管理包,请尝试删除csproj文件中的item ref。
    猜你喜欢
    • 2021-07-22
    • 1970-01-01
    • 2020-02-21
    • 2012-09-10
    • 1970-01-01
    • 1970-01-01
    • 2014-01-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多