ChatGPT解决这个技术问题 Extra ChatGPT

Microsoft .NET 4.0 完整框架和客户端配置文件之间的差异

Microsoft .NET Framework 4.0 完整安装程序(32 位和 64 位)为 48.1 MB,客户端配置文件安装程序为 41.0 MB。解压后的安装文件分别为 237 MB 和 194 MB,安装后分别为 537 MB 和 427 MB。

这是 110 MB 的差异。这两个包有什么区别?

何时最好安装客户端配置文件而不是完整的 .NET Framework?

7.1 MB 的差异?开发人员对 compile errors 感到沮丧,因为 Microsoft 认为 7.1 MB 值得一分为二?惊人的。
A 7.1 MB difference? Developers get frustrated with compile errors because Microsoft thought 7.1 MB was worth splitting it in two? 这只是安装程序。解压后,它多了 43MB。安装后,它会增加 110MB。您可以忘记嵌入式或低调系统;成本和架构并不是 Rπ 不支持 Windows 的唯一原因。

C
Callum Watkins

What's new in .NET Framework 4 Client Profile RTM 解释了许多差异:

何时使用 NET4 Client Profile 以及何时使用 NET4 Full Framework? NET4 客户端配置文件:始终将 NET4 客户端配置文件用于所有客户端桌面应用程序(包括 Windows 窗体和 WPF 应用程序)。 NET4 Full 框架:仅当您的应用所需的功能或程序集未包含在客户端配置文件中时,才以 NET4 Full 为目标。这包括: 如果您正在构建服务器应用程序。例如: o ASP.Net 应用程序 o 服务器端基于 ASMX 的 Web 服务 如果您使用旧版客户端方案。例如: o 使用在 NET4 中已弃用且未包含在客户端配置文件中的 System.Data.OracleClient.dll。 o 使用旧版 Windows Workflow Foundation 3.0 或 3.5(WF3.0、WF3.5)

但是,as stated on MSDN,这与 >=4.5 无关:

从 .NET Framework 4.5 开始,客户端配置文件已停用,只有完整的可再发行包可用。 .NET Framework 4.5 提供的优化(例如更小的下载大小和更快的部署)已经消除了对单独部署包的需求。单个可再发行组件简化了安装过程并简化了应用程序的部署选项。


此博客条目还讨论了不同的框架文件大小:hanselman.com/blog/…
C
Community

您应该在公司内部部署“客户端配置文件”而不是“完整框架”,主要是在一种情况下:您希望明确拒绝某些 .NET 功能在客户端计算机上运行。唯一真实的情况是在公司的客户端机器上拒绝 ASP.NET,例如,出于安全原因或现有的公司策略。

在客户端计算机上节省少于 8 MB 的空间并不是在公司中部署“客户端配置文件”的重要原因。在公司后期部署“完整框架”的必要性风险高于每个客户 8 MB 的成本。


卡梅伦的答案中的链接指定了一系列原因。
@阿德。当然,我们都在谈论同样的事情。两个包之间的差异是众所周知的。我只想说清楚,使用“客户端配置文件”的唯一严重原因是要求在客户端计算机上拒绝 ASP.NET。所有其他技术细节都不是很重要。
Saving of less then 8 MB… 这只是安装程序;安装后多了 110MB。
在这个 1Tb 驱动器的时代,110Mb-8Mb 等谁在乎?
@Oleg,如果您的回答是正确的,那么为什么 .NET 4.5 及更高版本不再支持客户端配置文件?
R
Richard Szalay

MSDN 上的 Assemblies in the .NET Framework Client Profile 提供了程序集列表(列表太长,无法在此处包含)。

如果您对功能更感兴趣,MSDN 上的 .NET Framework Client Profile 列出了以下内容:

公共语言运行时 (CLR)

点击一次

Windows 窗体

Windows 演示基础 (WPF)

Windows 通信基础 (WCF)

实体框架

Windows 工作流基础

演讲

XSLT 支持

LINQ 到 SQL

实体框架和 WCF 数据服务的运行时设计库

托管可扩展性框架 (MEF)

动态类型

并行编程功能,例如任务并行库 (TPL)、并行 LINQ (PLINQ) 和协调数据结构 (CDS)

调试客户端应用程序

并且不包括以下内容:

ASP.NET

高级 Windows Communication Foundation (WCF) 功能

适用于 Oracle 的 .NET Framework 数据提供程序

用于编译的 MSBuild


P
Peter Mortensen

Cameron MacFarland 做到了。

我想补充一点,.NET 4.0 客户端配置文件将包含在 Windows Update 和未来的 Windows 版本中。期望大多数计算机具有客户端配置文件,而不是完整配置文件。如果您从事 business-to-consumer (B2C) 销售,请不要低估这一事实。