.NET Framework SDK和Targeting包之间有什么区别

Ale*_*ani 40 .net visual-studio

我正在尝试在Visual Studio中安装.NET Framework 4.7.1,我可以选择安装:

  • .NET Framework 4.7.1 SDK
  • .NET Framework 4.7.1目标包

我需要它们吗?他们每个人之间有什么区别?

Tha*_*hma 43

.NET Framework SDK是Microsoft的软件开发工具包(SDK).

它需要为.NET Framework开发应用程序,它包含:

  • 文件
  • 头文件
  • 图书馆
  • 样品和工具.

.NET Framework SDK专门用于开发.NET Framework应用程序.安装visual studio时,这就足够了.

当您定位与当前安装的.NET框架不同的特定.NET框架时,需要定位包.

对于目标包,假设您使用.NET 4.7构建应用程序,但客户端具有.NET 4.5.对于此类场景,即使您使用的是更高版本,也可以定位客户端版本.

在这里,您可以看到如何定位特定的.NET框架.

希望它有所帮助!

  • @osexpert如果我理解正确,你需要SDK才能开发.定位包需要SDK才能运行; 它只允许您使用SDK来定位早期版本,而不仅仅是SDK的版本. (8认同)
  • 它没有完全回答这个问题.为什么在.NET X的目标包足以为其构建应用程序时,是否应该为.NET X安装SDK? (6认同)
  • FWIW我只安装了没有SDK的目标包,我可以毫无问题地构建并运行到该版本(特别是4.7.2)。 (4认同)
  • 在 VS 中针对特定框架版本进行开发时,您需要安装 SDK,以便获得正确的参考程序集和 IntelliSense。目标包本身仅提供对构建目标的支持。 (2认同)

and*_*lov 9

这是区别,根据

学习微软网站

目标包: 让您的应用程序在 Visual Studio 和其他一些开发环境中进行开发时,可以针对特定版本的 .NET Framework。

开发人员包: 包括特定版本的 .NET Framework 及其随附的 SDK 以及相应的目标包。

换句话说,例如:SDK 4.7.1 包括 .NetFramework 4.7.1 和目标包 4.7.1。但如果你想以.Net Framework 4.6为目标,则需要安装目标包4.6

  • 如果 SDK 包含定位包,则 SDK 应该更大。但根据 Visual Studio 安装程序,4.6.2 目标包为 135MB,而 4.6.2 SDK 只有 28MB。这里有些不对劲。 (2认同)