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

11

最近我在研究一个.net core应用程序,发现了一些之前可能错过的东西。它们有三种依赖关系:

  • Analyzers
  • Nuget
  • SDK

Analyzers还好,但是我不确定Nuget和SDK依赖之间的区别,因为它们在相同的包中也存在重叠,例如Micosoft.AspNetCore.App(2.1.1),同时在SDK和nuget中都提供了所有相关依赖项。

输入图像描述

这是默认的带有Docker的.NET Core Asp.net Web API,没有更改任何包或依赖项。

为什么需要在两个地方使用这些包作为依赖项呢?


你找到答案了吗?我也有同样的问题。 - Sateesh Pagolu
还没有。我甚至忘记了这个问题,直到看到你的评论才想起来。 - Pranav Singh
2个回答

1

我也有同样的疑问,虽然我没有直接回答你的问题,但是我找到了以下内容。

这是我的总结:

  • NuGet 给人的感觉
    • 更轻量级
      • 没有内置文档
    • 可移植性
  • SDK 给人的感觉
    • 更加强大
      • 文档、更好的智能提示支持、示例、教程等
    • 紧密耦合
      • 与特定平台或语言相关联
      • Android SDK 对 iOS 开发不起作用,反之亦然

研究

NuGet 是一个开源的软件包管理系统,简化了将库集成到项目中的过程。

SDK 可以(并且可能应该)具有文档、教程、调试帮助以及 API 和/或代码库。即平台和/或语言特定。请参见什么是 SDK

在 Visual Studio Docs 上的NuGet与SDK作为项目引用页面上,有一个表格比较和对比这两者。它变得比我能理解的更技术化了,但是它给了我一个大致的方向,对我的解决方案来说是正确的方向。

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接