在visual studio解决方案文件夹中存储引用的Dll

时间:2011-02-11 16:58:52

标签: visual-studio-2010

我想要一个存储我所有dll的库文件夹。我目前正在做的是建议here。有物理文件夹,创建解决方案文件夹,复制文件。

如果我正在使用SVN,我将不得不在文件浏览器上使用tortoise来添加库。不确定我是否必须在TFS中做同样的事情。

在2010年的比赛中,有没有更简单的方法呢?我希望能够将一个dll拖到visual studio中的库文件夹中,并将它物理地放在文件夹中。

1 个答案:

答案 0 :(得分:72)

我就是这样做的。不确定是否还有其他更好的方法:

  1. 右键单击解决方案资源管理器中的解决方案。将鼠标悬停在 “添加”并选择“新建解决方案文件夹”。它不是一个真正的文件夹 并且不指向任何物理文件夹。这是一个摘要 构造用于在解决方案中对项目进行分组,但我们将使用它 为了别的什么。
  2. 称之为“Referenced Assemblies”。
  3. 接下来,再次右键单击您的解决方案,然后单击“打开文件夹” 在Windows资源管理器中“。在弹出的Windows资源管理器窗口中 添加一个新的“物理文件夹”(这将位于下方 解决方案的根文件夹)。
  4. 您可以将其命名为“Referenced Assemblies”,以便解决方案文件夹和物理文件夹共享相同的名称,以避免混淆。
  5. 抓住所有那些潜伏在各处的DLL(即 埋藏在 AjaxControlToolkit.dll DocumentFormat.OpenXml.dll 中 程序文件)和复制(请勿拖拽 - 将原件保留在原处 是)他们进入Windows资源管理器中的“Referenced Assemblies”文件夹 (不在解决方案中)。
  6. 现在你可以从“Referenced Assemblies”中拖动那些复制的dll了 Windows资源管理器中的物理文件夹到“Referenced Assemblies”解决方案文件夹中 在Visual Studio的Solution Explorer中。
  7. 浏览解决方案中的每个项目并删除所有引用 您将从“Referenced”引用的程序集 装配“文件夹。
  8. 重新添加引用,但这次(在项目下) 右键单击“引用”,单击“添加引用...”,选择 在“浏览”选项卡中,单击带有绿色箭头的文件夹图标(显示“向上” 单层“当悬停在它上面时”,双击“参考 Assemblies“文件夹,选择你想要引用的所有dll和 单击“确定”。
  9. 你已经完成了。既然你的解决方案知道这些dll以及在哪里找到它们,当你签入代码时(通过SVN,TFS或其他),它会将它们推送起来并复制下来供其他人使用。

    如果您使用TortiseSVN,如果您还使用AnkhSVN plug-in for Visual Studio,则无需执行任何操作。它研究您的解决方案文件(就像TFS一样)来查找解决方案引用的文件。在这种情况下,它将获取“Referenced Assemblies”解决方案文件夹引用的新dll,并在提交之前自动添加源代码控制跟踪(即,如果您在Visual Studio中从解决方案资源管理器提交解决方案更改,就像我一样)。

    希望这有帮助。