您当前的位置:首页 > 文章 > .Net Framework 的“Targeting Pack”和“SDK”有什么区别?

.Net Framework 的“Targeting Pack”和“SDK”有什么区别?

作者:小象整理 时间:2023-09-22 阅读数:540 人阅读
问题描述
我正在尝试在Visual Studio中安装.NET Framework 4.7.1,可以选择安装:

.NET Framework 4.7.1 SDK
.NET Framework 4.7.1定位包
我都需要它们吗?它们之间有什么区别?

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

开发用于.NET Framework的应用程序是必需的,它包含:
文档
头文件
图书馆
样品和工具.

.NET Framework SDK专用于为.NET Framework开发应用程序.安装Visual Studio时,足够了. 

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

对于定向包,假设您使用.NET 4.7构建应用程序,但客户端具有.NET 4.5.对于这种情况,即使您使用的是更高版本,也可以定位客户端的版本.

此处,您可以看到如何定位特定目标.NET框架.



参考:

目标包(Targeting Pack):在Visual Studio 和其他一些开发环境中进行开发时,允许应用定位 .NET Framework 的特定版本。

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

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


通俗简单来说就是:

目标包仅包含某个.NET实现版本的程序集格式、API、功能兼容性等的描述信息库。

而SDK包含相应.NET实现的全套运行时、MSBuild等生成工具、编译器等开发所需的一切,包含目标包。

从安装的用途讲:

如果仅针对单一的.NET实现版本进行开发,那么只需要安装相应版本的SDK即可。

如果需要针对多个.NET实现版本,或者生产机器的.NET实现版本与开发机器的.NET实现版本不一致,开发机只需安装高版本的SDK和其他版本的目标包,无需安装所有版本的SDK,因为高版本的编译器、生成工具等可兼容低版本。


感谢:知乎网友ggffss和AlseinX,it1352.com
参考来源:https://www.zhihu.com/question/434749676/answer/1637114460,https://www.it1352.com/1875476.html

本站大部分文章、数据、图片均来自互联网,一切版权均归源网站或源作者所有。

如果侵犯了您的权益请来信告知我们删除。邮箱:1451803763@qq.com