.Net Core项目中Nuget和SDK依赖之间的区别

Pra*_*ngh 6 .net sdk visual-studio nuget-package asp.net-core

我最近正在研究.net核心应用程序,并且发现了之前可能错过的一些东西。依赖关系分为三种:

  • 分析仪
  • 努吉特
  • 开发包

分析器足够公平,但是我不确定Nuget和SDK依赖性之间的区别,因为它们在Micosoft.AspNetCore.App(2.1.1)中都在同一个程序包中重叠,两者都可用,两者都具有相关性。 SDK和nuget。

在此处输入图片说明

默认情况下,这是带有docker的.net核心Asp.net Web API,而对特性或依赖项没有任何更改。

为什么在两个地方都需要软件包作为依赖项?

小智 1

我想知道同样的事情,虽然我没有直接回答你的问题,但这是我发现的。

这是我的总结:

  • NuGet 感觉(对我来说)
    • 更轻量
      • 没有内置文档
    • 便携的
  • SDK感受
    • 更稳健
      • 文档、更好的智能感知支持、示例、教程等。
    • 紧密耦合
      • 连接到特定平台或语言
      • Android SDK 不会帮助 iOS 开发,反之亦然

研究

NuGet 是一个开源包管理系统,可简化将库合并到项目中的过程。

除了 API 和/或代码库之外,SDK 还可以(并且可能应该)提供文档、教程、调试帮助。即特定于平台和/或语言。查看什么是 SDK

在 Visual Studio Docs 上的NuGet 与 SDK 作为项目参考页面上,他们有一个网格来比较和对比两者。它的技术性超出了我的理解范围,但它让我大致了解了我的解决方案的正确方向。