.net framework 自从 2002 年发展至今,已经历了好几个版本,1.0, 1.1, 2.0, 3.0, 3.5 等不同的版本更替,.net framework 的Redistributable Package也愈来愈大,到了 .NET Framework 3.5 SP1 时已经膨胀到 231MB,除非软件本身就很大,不然对于 .NET 软件的Redistribute是相当不利的,除非客户端本身就有安装 .NET Framework,否则几乎都要夹带一个 .NET Framework 的Redistributable Package,如果只是一个小小的应用程序文件 (几十或几百KB) 还要夹一个那 大的 .NET Framework Redistributable Package,大概很多开发人员都会觉得麻烦,就算开发人员接受,但在企业网络的 IT 管理人员就不一定会接受了 … 所以 .NET Framework 的减肥一直都是 .NET 开发人员的愿望与期待,而 .NET Framework Client Profile 就是微软针对这个需要的主要响应。既然 .NET 应用程序不一定会用到所有的 .NET Class Library,那微软就将 .NET Framework 部份不常用的功能由主函数库中抽离出来,让Redistributable Package可以缩小,有利于重新发布应用程序。

.NET
Framework Client Profile 在 .NET 3.5 时首次和开发人员见面,但是碍于它只能利用 ClickOnce
部署方式安装,因此使用它的开发人员不多,且也有许多人反应希望将 .NET Framework Client Profile
能够利用光盘或其他储存媒体转散布,微软从善如流,将 .NET Framework 4.0 的 Client Profile 改成Redistributable
Package。

.NET Framework Client Profile
4
包含下列功能:
•Common Language Runtime (CLR)
•ClickOnce

•Windows Forms
•Windows Presentation Foundation (WPF)
•Windows
Communication Foundation (WCF)
•Entity Framework
•Windows Workflow
Foundation
•语音
•XSLT 支援
•LINQ to SQL
•Entity Framework 与 WCF
Data Services 执行期设计函式库
•Managed Extensibility Framework (MEF)
•动态型别

•并列程序设计功能,例如 Task Parallel Library (TPL), Parallel LINQ (PLINQ), and
Coordination Data Structures (CDS)
•除错客户端应用程序
下列功能不包含,要另外安装 .NET
Framework 4.0 的完整版本:
•ASP.NET
•进阶 Windows Communication Foundation (WCF)
功能
•.NET Framework Data Provider for Oracle
•编译用 MSBuild
Visual Studio 2010 的项目中,下列应用程序会默认使用 .NET
Framework 4.0 Client Profile,若要使用完整的 .NET Framework 功能,则要自行到项目属性中设定 target
framework 至 .NET Framework 4.0:
•Windows Projects (C# and Visual Basic)

•Windows Presentation Foundation
•WPF Application
•WPF Browser
Application
•WPF Custom Control Library
•WPF User Control Library

•Windows Forms
•Windows Forms Application
•Windows Forms Control
Library
•Console Application
•Empty Project
•Window Service

•Visual F#
•F# Application
•F# Tutorial
•Workflow (C# and Visual
Basic)
•Activity Designer Library
•Activity Library
•Workflow
Console Application
•Windows Communication Foundation
•WCF Service
Library
•Office 2007 and Office 2010
•All projects target the .NET
Framework 4 Client Profile

而 .NET Framework 4.0 Client Profile 与原有的 .NET
Framework 3.5 Client Profile 不同的地方有:
•3.5 版本的 Client Profile 只能使用在 Web
(ClickOnce),4.0 版本则因为具有Redistributable Package,所以可同时适用于本机或 Web 安装。
•3.5
版本只支持 x86 的 Windows XP SP2/SP3,4.0 版本则支持除了 IA64 以外,.NET Framework 4 支持的所有平台。

•3.5 版本的 Client Profile 与 .NET Framework 3.5 是分开的版本,4.0 版则为 .NET Framework
4.0 完整功能的子集。
•3.5 版本会受 Windows Update 的影响自动升级到 .NET Framework 3.5,4.0
版则可以在不需要完整 .NET Framework 4.0 下自行运作,也可以分开提供服务。

不过也因为如此,当在 Visual Studio 2010 建立新项目时,如果发现 [添加引用]
中没有列出原本应该列出的组件或者引用的其他程序集,在代码中的调用一直提示找不到名字空间时,可以先检查是否是项目的 target framework 设成了
.NET 4.0 Client Profile (例如 System.Web.dll 就不在 .NET 4.0 Client Profile
套件中),若是改成.NET Framework 4就OK了。

.NET Framework 4 与.NET Framework 4 Client Profile有什么区别?的更多相关文章

  1. .net framework4与其client profile版本的区别

    简而言之,client profile版本是完整版本的一个子集.包含大多数最常用的功能并减小了体积,以便更容易的安装和发布,同时还有微软所声称的一些好处,比如因为减少了某些库,所以使其更加安全等等. ...

  2. Net Framework 4.0 和.Net Framework 4.0 Client Profile

    Net Framework 4.0 和.Net Framework 4.0 Client Profile区别: .Net Framework 4.0毫无疑问就像是.Net Framework 2.0一 ...

  3. .NET Framework 4 与 .NET Framework 4 Client Profile

    今天碰到的一个问题和Client Profile相关的.问题是这样的:一个WPF工程,需要引用另外几个.NET的assembly, 在WPF工程中添加了对这几个assembly的引用,并在程序中可以添 ...

  4. .NET Framework 4 和 .NET Framework 4 Client Profile

    提出这个问题的背景:在新项目中封装了一个DAL来通过EF框架对数据库操作,但是在项目引用后,每当编译时就会出错!更加诡异的是在Web项目和WCF项目中对此DAL引用时就不会出现此问题.作为一个初学者, ...

  5. .net framework client profile

    .NET Framework Client Profile The .NET Client Profile is a subset of the .NET Framework, which was p ...

  6. 在引用阿里云库或其他库的时候,经常发生框架不兼容(原因是系统采用:Microsoft .NET Framework 4 Client Profile ),请改为Microsoft .NET Framework 4

    在引用阿里云库或其他库的时候,经常发生框架不兼容(原因是系统采用:Microsoft .NET Framework 4 Client Profile ),请改为Microsoft .NET Frame ...

  7. .Net Framework Client Profile 和 .Net Framework的区别[转]

    原文链接 VS2010默认是以.Net Framework Client Profile为生成环境的,如果需要更多的功能,应该调用.Net Framework.

  8. Entity Framework 教程——安装Entity Framework环境

    安装Entity Framework环境 Entity Framework 5.0 API分布在两个地方,一个可在NuGet包管理器中找到,一个存在于.NET framework中..NET fram ...

  9. MVC5 Entity Framework学习之Entity Framework高级功能(转)

    在之前的文章中,你已经学习了如何实现每个层次结构一个表继承.本节中你将学习使用Entity Framework Code First来开发ASP.NET web应用程序时可以利用的高级功能. 在本节中 ...

随机推荐

  1. LeetCode(90):子集 II

    Medium! 题目描述: 给定一个可能包含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集). 说明:解集不能包含重复的子集. 示例: 输入: [1,2,2] 输出: [ [2], [1 ...

  2. laravel 分类的列表查询

    public function index(Request $request, ResponseFactoryContract $response, QuestionModel $questionMo ...

  3. hdu4044 依赖背包变形 好题!

    由于不是求最大的可拦截的HP值,而是要将最小值最大化,那么就需要分配每个子树用的钱数以达到最小值最大化 第一步解决如何分配钱使得结点u的子树中用了j元钱后可以拦截的HP最大,这就是变形的分组(依赖)背 ...

  4. web.xml中的ContextLoaderListener和DispatcherServlet区别

    ContextLoaderListener和DispatcherServlet都会在Web容器启动的时候加载一下bean配置. 区别在于: DispatcherServlet一般会加载MVC相关的be ...

  5. mysql下载源码方法

    方法一 进入mysql官网:http://dev.mysql.com/downloads/mysql/ 选择相关的平台下载: 3.选择Source Code 选型后,拉倒网页下方,选择要下载的源码包 ...

  6. easyui之自定义字体图标(鼠标覆盖时切换颜色)

    项目要求是自定义字体图标,使用easyui框架结构,众所周知easyui强功能弱样式,字体图标其实就是一张图片.要达到切换图标颜色的效果,要么就是有两套图,使用js控制.但是我这个人比较懒,不喜欢做复 ...

  7. 步步为营102-Css样式加个版本

    背景:当系统发布后修改了css样式,由于浏览器有缓存,所以会造成css样式无效.可通过在css中添加版本号来解决 1 修改css引用 <link rel="stylesheet&quo ...

  8. jqurey实现点赞特效

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. EF Core Fluent API

    多对多配置 先安装 Install-Package MySql.Data.EntityFrameworkCore 创建3个表 创建类 public class Role { public long I ...

  10. gradle编译命令 & 自动打包等

    ./gradlew -v 版本号,首次运行,没有gradle的要下载的哦. ./gradlew clean 删除HelloWord/app目录下的build文件夹 ./gradlew build 检查 ...