Visual Studio:如何在Visual Studio中引用程序集?

时间:2009-02-03 15:01:35

标签: visual-studio assemblies

我有一个程序集dll的调试版和发行版。

他们坐在我的电脑上的目录。对于其他开发人员,他们坐在计算机上的目录中。

对于我想要使用调试程序集的应用程序的调试版本。对于应用程序的发布版本,我想使用发布程序集。

这是个问题。


对于那些没有注意的人,这里有很多问题。如何在我的计算机上引用程序集,在项目检查到源代码管理之后,该程序集成为某个计算机上的有效路径。

如何使“参考”节点按解决方案类型(Debug,Release)。

我尝试将调试程序集复制到

\bin\Debug

和发布程序集

\bin\Release

并将程序集dll添加到

中的源代码控制中

\ BIN \调试    \ BIN \释放

的文件夹。然后我希望程序集可以在可执行文件的文件夹中找到。

问题在于,当CopyLocal为false时,其他开发人员的计算机会收到无法覆盖程序集dll的错误。

3 个答案:

答案 0 :(得分:8)

对这些DLL使用通用结构(通用目录名称)并链接到此亲属。

.csproj文件的示例:

<Reference Include="utils_xxx, Version=1.2.10.0, Culture=neutral, processorArchitecture=MSIL">
  <SpecificVersion>False</SpecificVersion>
  <HintPath>..\..\common_utils_dllproject_dir\utils\bin\$(Configuration)\utils_xxx.dll</HintPath>
</Reference>

您可能需要手动输入,但一旦进入仓库,对所有人来说都是一样的。现在你只需要说服你的开发人员调整这个目录布局和-naming。

PS:如果你忽略它:$(配置)是使用Release / Debug-DLL的技巧。

答案 1 :(得分:1)

  • 开发人员必须在其计算机上的某个位置创建一个文件夹...
[Parent Folder]
  Debug
    [Debug Assembly].dll
  Release
    [Release Assembly].dll
  • 打开项目并从第一步添加对Debug程序集的引用。检查一下。
  • 每个开发人员打开项目并在项目属性中添加引用路径。该路径应该是第一步中Debug文件夹的绝对路径。
  • 每个开发人员关闭Visual Studio并编辑现在与项目文件位于同一文件夹中的[project] .user文件。将“Debug”更改为“$(Configuration)”。保存并关闭。
  • 现在应该可以了。如果在“解决方案资源管理器”中选择引用并查看“属性网格”中的“路径”属性,则可能不正确。这只是一个VS问题。如果您在Release和Debug中测试构建,它应该可以工作。

这是有效的,因为开发人员设置的引用路径存储在永远不会检入源代码管理的用户文件中。因此,每个开发者的路径可以不同。这个解决方案基本上是从Leonidas的答案中窃取的,但是使用了参考路径。

<强>声明
我不知道你情况的所有细节,但我个人不会这样做。我可能会在开发人员的机器上为GAC发布版本。然后我会在服务器上运行一个构建脚本来处理复杂的场景。

答案 2 :(得分:0)

包括项目并链接到项目?不知道这在你的情况下是否有用......