c# - 如何正确共享引用另一台计算机的 VS 项目

标签 c# visual-studio

我这里有一个编译良好的项目,但它使用了对不是来自 NuGet 的 DLL 的引用。我是用References-Add Reference-Browse添加的。

不幸的是,DLL 位置为 [project dir\bin\debug] 和 [project dir\bin\release] 的引用出现(通过单击解决方案资源管理器中引用的属性)。这些目录似乎不适合添加到源代码管理以共享到另一台计算机。我添加这两个目录似乎也不对。

所以当我转移到另一台计算机时,最终结果当然是“您是否缺少引用?”。

我想做的:将引用放在我的解决方案下的目录中,将其添加到源代码管理,然后使用该路径将引用添加到 Visual Studio。

除了将每个构建配置目录中的 DLL 添加到源代码管理之外,我看不出如何完成此操作或类似操作。

最佳答案

直接引用

我认为你所做的几乎是正确的。您只需确保在添加引用时指向正确的文件。

  1. 将库放入文件夹中,例如第三方库
  2. 将文件添加到 git(例如使用 git add)。
  3. 使用 Add Reference... 添加对项目的引用,并指向新创建的文件夹中的文件文件。您可能希望将其设置为 Copy Local

Nuget方式

一种选择是使用本地 nuget 源:

  1. 将库打包为 nuget 包并放入 git 存储库中的本地文件夹中,例如MyLocalNuget

  2. 在解决方案级别添加 NuGet.config。示例:

    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
    <solution>
        <add key="Local NuGet" value="MyLocalNuget"/>
    </solution>
    <packageSources>
        <clear /> 
        <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
    </packageSources>
    </configuration>
    
  3. 使用正常的 NuGet 方式将库添加到项目中。

关于c# - 如何正确共享引用另一台计算机的 VS 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66978136/

相关文章:

c# - Azure 函数服务总线触发器从函数级别设置自动完成

c# - .Net 中的清理与内存回收

c# - 如何从 Entity Framework 中的存储过程中获取返回值?

c# - 如何使用 Tangible Editor 从单个 T4 模板创建多个输出文件?

c# - 如何找出死锁等待的任务及其当前调用堆栈?

c# - MSTest 未使用我的项目目标框架

python - 逐行跟踪和记录 C++ 程序的执行情况

c# - 具有效果的按钮不会打印

c# - 文件上传进度

c++ - 在 VS 2013 编辑器中显示 C++ 编译错误