为什么要参考项目包?

时间:2016-09-22 18:09:57

标签: .net asp.net-core .net-core

我已经看过很多关于global.json功能的文章和例子,它们直接在解决方案中包含对相关项目的引用,甚至在文件系统中的其他项目/解决方案中包含引用,如本文所述: https://ievangelist.github.io/blog/the-global-json/

但我真的没有看到这样做优于包裹的优势。做这种外部引用(你可以在.NET Core之前没有global.json,它只是不会在解决方案中显示)有我所看到的以下问题:

  1. 这意味着您必须在文件系统中拥有相同的不同解决方案组织,这些解决方案无法实施,但现在需要工作。
  2. 如果您通过文件系统引用源代码,那么当您将该项目置于不可编译的不完整状态时会发生什么?如果它是一个包,就没有任何影响,因为你没有重新部署你的包。
  3. 当然,如果项目在同一个解决方案中而且一个依赖于另一个项目,则按项目引用,但如果它们不在同一个解决方案中,我就不明白为什么你会想采用这种方法。

    如上文所述,更新软件包的过程可确保完整性,并且您不会无意中破坏某些内容,而这些内容会使用该项目作为参考。

    我见过的唯一专业人员是你总是得到最新的引用项目,而对于不一定正确的包,或者根据你的正则表达式引用,你可以获得一个你没有的开发构建想要。但我认为这是一个优势,你真的不想自动获得最新的,你只想在你可以的时候1)确保新版本没有破坏某些东西2)确保你有理由更新最新版本。

    有什么好处?

1 个答案:

答案 0 :(得分:2)

引用项目而不是包只是方便小项目。

当您进行少量更改时,不需要构建软件包,也不需要构建服务器,也不需要更新所有项目的版本以引用新程序集。

在不同的非相关项目中重复使用程序集时,没有理由或这样做。我从来没有见过一个专业的参考资料,建议在这种情况下使用项目而不是包。