【问题标题】:Visual Studio - Reference of dlls are automatically created at bin folderVisual Studio - 在 bin 文件夹中自动创建 dll 的引用
【发布时间】:2014-09-03 12:00:15
【问题描述】:

我正在使用带有 MCV4 的 Visual Studio 2010(单独安装)。

有些dll链接到原始路径,有些被复制到项目中。 我不希望它们被复制到项目中。

即在构建 Web 项目 (MCV4 -> Web API) 时,我看到了几个自动创建的 dll: Antlr3.Runtime.dll - 在项目文件夹上创建(路径不是原始文件夹)。

还有:EntityFramework.dll、System.Web.Optimization.dll 等等,

system.web 位于 C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.0\System.Web.dll 文件夹中。

为什么将上述 dll 复制到项目文件夹中,我如何强制它们位于原始文件夹中?

谢谢:)

【问题讨论】:

    标签: visual-studio-2010 dll


    【解决方案1】:

    如果您右键单击项目中的每个引用程序集,则会有一个属性“Copy Local”。对于您设置 Copy Local=true 的每个引用,它将被复制到您的输出文件夹 (\bin) 中。

    除非 DLL 在 GAC (Global Assembly Cache) 中,否则您需要将其复制到本地,因为应用程序不知道从何处加载这些 DLL。默认情况下,当您添加引用时,当 DLL 不在 GAC 中时,Copy Local 将为 true。

    如果应用程序找不到它需要的 DLL,它会在需要 DLL 时失败。

    .Net 应用程序只能从 GAC 或您的应用程序路径和子目录加载 DLL,除非您使用自己的 Assembly.Load() 代码来执行此操作。

    【讨论】:

      猜你喜欢
      • 2010-12-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-15
      • 2021-05-27
      • 1970-01-01
      相关资源
      最近更新 更多