Microsoft .NET 4.0完整框架和客户端configuration文件之间的区别

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

这是110 MB的差异。 这两个软件包有什么不同?

什么时候最好安装客户端configuration文件而不是完整的.NET Framework?

.NET Framework 4 Client Profile RTM的新增function解释了许多不同之处:

何时使用NET4客户端configuration文件以及何时使用NET4 Full Framework?
NET4客户端configuration文件:
始终针对所有客户端桌面应用程序(包括Windows窗体和WPF应用程序)定位NET4客户端configuration文件。

NET4完整框架:
仅当您的应用程序需要的function或程序集未包括在客户端configuration文件中时,目标NET4才能满。 这包括:

  • 如果你在build立服务器应用程序。 如:
    o ASP.Net应用程序
    o服务器端的基于ASMX的Web服务
  • 如果您使用旧版客户端scheme。 如:
    o使用在NET4中不推荐使用并且不包含在客户端configuration文件中的System.Data.OracleClient.dll。
    o使用旧版Windows Workflow Foundation 3.0或3.5(WF3.0,WF3.5)
  • 如果您针对开发人员场景并需要工具(如MSBuild)或需要访问devise组件(如System.Design.dll)

但是, 如MSDN所述 ,这与> = 4.5无关:

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

您应该仅在一个案例中部署“客户端configuration文件”而不是“公司内部”,而不是“完全框架”:您希望显式拒绝某些.NETfunction在客户端计算机上运行。 唯一真实的情况是,例如,由于安全原因或现有的公司政策,在公司的客户端机器上拒绝ASP.NET

在客户端计算机上保存less于8MB的数据不能成为公司“客户端configuration文件”部署的重要原因。 稍后在公司中部署“完整框架”的必要性的风险高于每个客户8 MB的成本。

程序集列表可在MSDN上.NET Framework Client Profile中的程序集中find(列表太长而无法在此处显示)。

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

  • 公共语言运行时(CLR)
  • 的ClickOnce
  • Windows窗体
  • Windows Presentation Foundation(WPF)
  • Windows通信基础(WCF)
  • entity framework
  • Windows Workflow Foundation
  • 言语
  • XSLT支持
  • LINQ to SQL
  • entity framework和WCF数据服务的运行时devise库
  • 托pipe扩展性框架(MEF)
  • dynamictypes
  • 并行编程function,如任务并行库(TPL),并行LINQ(PLINQ)和协调数据结构(CDS)
  • debugging客户端应用程序

以下不作为:

  • ASP.NET
  • 高级Windows通信基础(WCF)function
  • 用于Oracle的.NET Framework数据提供程序
  • 用于编译的MSBuild

Cameron MacFarland钉了它。

我想补充一点,.NET 4.0客户端configuration文件将包含在Windows Update和未来的Windows版本中。 期望大多数计算机具有客户端configuration文件,而不是完整的configuration文件。 如果您正在进行企业对消费者 (B2C)销售,请不要低估这一事实。