2

也许这里的问题是我不完全理解 .NET 4 的客户端配置文件和 .NET 4 的(常规?)版本之间的区别......

当我在 Visual Studio 2010 中开始一个新项目时,它默认为 .NET Framework 4 Client Profile 的目标框架。有时,在使用第三方库时,如果我的项目是为 .NET Framework 4 客户端配置文件设置的,我会遇到编译错误 - 切换到 .NET Framework 4 可以解决此问题。

我一直都在处理这个问题,但今天我决定问这个问题并弄清楚何时使用一个而不是另一个,以及为什么有两个版本的框架。

编辑:如果我以 .NET 4 为目标,我是否应该担心普通桌面用户不会通过 Windows 更新获得该框架?

4

1 回答 1

4

关于您的编辑:看看这里:.Net Framework 4 Full 和 Net Framework 4 Client Profile Targeting

Scott Hanselman的这篇文章向您展示了客户资料中的内容和内容:

迈向更小的 .NET 4 - 有关客户端配置文件和下载 .NET 的详细信息

  • 支持 Full 的所有操作系统
  • 支持 x86 和 x64
  • 客户端配置文件是可在 Windows 更新中用于桌面的框架
  • 支持 VS 的所有方面(例如目标、部署项目等)
  • 是几乎所有 VS10 客户端项目模板(Winforms、WPF、VSTO 等)中的默认目标

这是有趣的部分:

一般的想法是他们避免在客户端机器上安装你不需要的东西。这意味着他们不会仅仅因为她想要一个游戏就在你妈妈的电脑上安装 ASP.NET。此外,.NET 4 客户端配置文件是 .NET 4“完整”框架的适当子集。

这是更详细的帖子:.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)
  • 如果您面向开发人员场景并需要 MSBuild 等工具或需要访问 System.Design.dll 等设计程序集

值得一提的是,从.NET 4.5没有更多的Client Profile. 它已停产: http: //msdn.microsoft.com/en-us/library/cc656912.aspx(链接由CodingWithSpike提供)

于 2012-09-06T15:10:02.837 回答