为什么Visual Studio将系统程序集复制到输出文件夹?

时间:2009-07-15 13:31:27

标签: visual-studio-2008 build-process

我正在使用Visual Studio 2008 SP1并且有一个有趣的问题。当我构建我的项目时,System.Trasactions.dll被复制到输出文件夹(/ web / bin)。我实际上有两个问题。首先是

  1. 为什么Visual Studio会将文件复制到输出文件夹中,即使它未从我的项目中引用? 我的项目引用了其他程序集,它们引用了System.Transactions.dll,但它们都没有指定Copy local。为什么这是一个问题,提出另一个问题:
  2. 我的操作系统是64位,但System.Transactions.dll来自32位框架,因此应用程序自然无法正常运行(实际上,它根本不运行。它会导致程序集加载程序错误)
  3. 任何人都有类似的经历吗?

1 个答案:

答案 0 :(得分:1)

  1. 如果右键单击引用,然后单击“属性”,将打开属性窗口。选中“复制本地”,您将看到它设置为true。如果您不想复制,请将其设置为false。

  2. 你说它来自32位框架,你能得到64位拷贝还是msil版本?