ASP中程序集、包和SDK之间的区别.NET核心类库



我有一个在ASP上运行的旧项目。NET核心2.1。该项目有依赖项文件夹,我们在其中有

  • 程序集
  • 软件包(nuget软件包(
  • SDK

我对它们的用法以及依赖项文件夹的含义有点困惑。

据我所知

  • 程序集是引用到此项目的.net库,它在解决方案中具有全局作用域,只有手动更新它们才能更新。

  • nuget包使用nuget包管理器安装,并在新更新时进行管理和更新,但nuget包只有项目范围。

  • sdk就像一组工具,我认为它和nuget包一样使用。

这是显示依赖项格式的屏幕截图

.net核心类库2.1依赖图像

另一件事是,当我添加.net核心类库时,我正在创建一个新项目。我有dependencies文件夹,但它缺少

  1. 程序集
  2. 软件包(nuget软件包(
  3. SDK

但它有一个名为framework 的新文件夹

.net core 3.0类库依赖映像

我想我必须在我的项目中手动添加这些包。这三者之间有什么区别?

程序集:-当我们编译源代码时,程序集将在Visual Studio中生成。程序集由Manifest和IL(中间语言(两部分组成。清单包含程序集元数据,即程序集的版本要求、安全标识、组成程序集的所有文件的名称和哈希。

Packages:包是UML元素(如类、用例和组件(定义的容器。一个包也可以包含其他包。在UML模型资源管理器中,包中的所有定义都嵌套在包下面。

Nuget软件包:Nuget软件包是预定义的代码片段,可供其他开发人员重复使用。您可以将NuGet包添加到您的项目中,并在项目中的任何位置使用它的功能。我们也可以说,NuGet的行为就像一个平台,开发者可以在这里创建代码并与世界共享。

SDK:SDK(软件开发工具包(是API(应用程序编程接口(的集合,您可以在Visual Studio中将其作为单个项引用。"引用管理器"对话框列出了与项目相关的所有SDK。将SDK添加到项目中时,Visual Studio中提供了API。

包不能手动添加

这是一个链接,其中已经清楚地解释了如何在visualstudio中添加包:-

https://learn.microsoft.com/en-us/nuget/quickstart/install-and-use-a-package-in-visual-studio

最新更新