Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 2008 使用Visual Studio管理源代码管理中的引用_Visual Studio 2008_Version Control_Dll_Reference - Fatal编程技术网

Visual studio 2008 使用Visual Studio管理源代码管理中的引用

Visual studio 2008 使用Visual Studio管理源代码管理中的引用,visual-studio-2008,version-control,dll,reference,Visual Studio 2008,Version Control,Dll,Reference,在Visual Studio中管理项目中的.dll引用时遇到问题。所有注册的.NET和COM引用都可以正常工作,但是当涉及到磁盘上的.dll文件时,如果我引用磁盘上的文件,我的同事会丢失引用,因为他们可能在磁盘上的不同位置等。Visual Studio是否有一个环境变量,如$PATH或其他什么,以便每台计算机都有路径,它会在说找不到引用之前先查找这些路径?还是在源代码管理中保留.dll引用是更好的选择 好的,它工作得很好。在VS中,我只是在解决方案中添加了一个文件夹,在文件夹中添加了DLL,并在

在Visual Studio中管理项目中的.dll引用时遇到问题。所有注册的.NET和COM引用都可以正常工作,但是当涉及到磁盘上的.dll文件时,如果我引用磁盘上的文件,我的同事会丢失引用,因为他们可能在磁盘上的不同位置等。Visual Studio是否有一个环境变量,如$PATH或其他什么,以便每台计算机都有路径,它会在说找不到引用之前先查找这些路径?还是在源代码管理中保留.dll引用是更好的选择


好的,它工作得很好。在VS中,我只是在解决方案中添加了一个文件夹,在文件夹中添加了DLL,并在源代码管理中添加了所有内容。我在个别项目中引用了这些DLL,当我从其他计算机上获得最新版本时,它链接正确。谢谢大家

我想在解决方案中添加一个解决方案文件夹,然后将所有外部DLL放入其中。从那里我引用了它,而不是PC上的特定文件夹

是的,它们在源头,但为什么不呢。尤其是在管理更新时


非常适合我。

一般经验法则:将dll放在源代码管理中,并尽可能按项目文件而不是dll添加引用在源代码管理中创建一个“引用”文件夹,其中包含所需的任何引用程序集。如果源可用于这些程序集,请将其也存储起来


我认为最好包括所有不属于OS或.NET框架的程序集。例如,在开始新的开发人员安装(在新机器上或重新安装操作系统)时,您不希望必须安装Enterprise Library或任何其他程序集。

我在源代码中有一个公用文件夹,其中存储了所有真正的第三方DLL。在每个项目下,我有以下三个文件夹:

  • 第三方-svn:外部链接到公共集所需的任何第三方DLL
  • 引用-指向任何内部构建项目的“Assemblies”文件夹的svn:externals链接
  • 程序集-这是项目的生成输出的位置。这样,其他可能需要引用程序集的项目就有一个单独的项目位置,并且使用svn:externals可以控制它们希望使用的版本

这对我来说很有效,无论是在subversion还是VSS中

\root
    \trunk
       foobar.sln (solution file goes here)
        \References
            foo.dll (3rd party, ie. you don't compile this)
            bar.dll
            (Don't put dll's for Project 1 here, Visual Studio will take care of it)
        \Project1
           .proj file goes here
              \bin  (don't put dll's here!)
        \Project2  (This might reference Project1
不要将dll放入\bin中,因为VSS之类的存储库喜欢将它们设置为只读,这会中断清理和重新构建


Visual Studio不了解解决方案级别以上的依赖关系,因此如果您有依赖于解决方案的解决方案,则必须在生成脚本/生成服务器中显示这些依赖关系。

如果源代码管理中存在.dll文件,则只需右键单击解决方案中的“依赖关系和包”文件夹(位于源代码管理资源管理器下)并获取其最新版本

您将在系统上找到.dll文件

\root
    \trunk
       foobar.sln (solution file goes here)
        \References
            foo.dll (3rd party, ie. you don't compile this)
            bar.dll
            (Don't put dll's for Project 1 here, Visual Studio will take care of it)
        \Project1
           .proj file goes here
              \bin  (don't put dll's here!)
        \Project2  (This might reference Project1