.net概述_第1页
.net概述_第2页
.net概述_第3页
.net概述_第4页
.net概述_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Windows Presentation Foundation(WPF):提供更佳的用户体验,用来开发Windows Forms程序以及流览器应用程序.Windows Communication Foundation(WCF):提供SOA(面向服务的软件构架)支持的安全的网络服务(Web Service)框架。Windows Workflow Foundation(WF):提供一个设计与发展工作流程导向(Workflow-oriented)应用程序基础支持的应用程序接口。Windows CardSpace:提供一个SSO的解决方案,每个用户都有各自的CardSpace。.Web服务从由简单网页构成的静态服务网站,发展到可以交互执行一些复杂步骤的动态服务网站,这些服务可能需要一个Web服务调用其他的Web服务,并且像一个传统软件程序那样执行命令。这就需要和其他服务整合,需要多个服务能够一起无缝地协同工作,需要能够创建出与设备无关的应用程序,需要能够容易地协调网络上的各个服务的操作步骤,容易地创建新的用户化的服务。 微软公司推出的.NET系统技术正是为了满足这种需求。.NET将Internet本身作为构建新一代操作系统的基础,并对Internet和操作系统的设计思想进行了延伸,使开发人员能够创建出与设备无关的应用程序,容易地实现Internet连接。 .NET系统包括一个相当广泛的产品家族,它们构建于XML语言和Internet产业标准之上,为用户提供Web服务的开发、管理和应用环境。.NET系统由以下5个部分组成。 1.NET开发平台 . NET开发平台由一组用于建立Web服务应用程序和Windows桌面应用程序的软件组件构成,包括.NET框架(Framework)、.NET开发者工具和ASP.NET。 2.NET服务器 NET服务器是能够提供广泛聚合和集成Web服务的服务器,是搭建.NET平台的后端基础。 3.NET基础服务 .NET基础服务提供了诸如密码认证、日历、文件存储、用户信息等必不可少的功能。4.NET终端设备 提供Internet连接并实现Web服务的终端设备是.NET的前端基础。个人计算机、个人数据助理设备PDA,以及各种嵌入式设备将在这个领域发挥作用。 5.NET用户服务 能够满足人们各种需求的用户服务是.NET的最终目标,也是.NET的价值实现。在这5个组成部分中,.NET开发平台中的.NET框架,是.NET软件构造中最具挑战性的部分,其他4个部分紧紧围绕.NET框架来进行组织整合。 .net 即DotNet。 首先我先给出微软的DotNet定义: Microsoft.NET 是 Microsoft.NET XML Web Services 平台。XML Web Services 允许应用程序通过 Internet 进行通讯和共享数据,而不管采用的是哪种操作系统,设备或编程语言。Microsoft.NET 平台提供XML Web Services 并将这些服务集成在一起,为个人用户的好处是无缝的,吸引人的体验。 .net的开发工具主要是Visual S 现在流行的版本是Visual S 2003,。 注意:.NET Framework 3.5版本以.NET Framework 2.0版和.NET Framework 3.0版为基础。主要包括如下组件:1.NET Framework 2.02.NET Framework 2.0 service pack1(SP1) 它更新包含.NET Framework2.0中的程序集3.NET Framework 3.0。它使用.NET Framework 2.0或.NET Framework 2.0 SP1中的程序集,并且包含.NET Framework 3.0引入的技术所需的程序集。 4.NET Framework 3.0 Service Pack 1,它更新包含.NET Framework 3.0中的程序集。5.NET Framework 3.5新增的程序集。所以,如果安装.NET Framework 3.5的时候缺少上述的任何组件,则系统会自动安装。但是,.NET Framework 2.0、3.0、3.5之间的关系不同于,.NET Framework 1.0、1.1和2.0之间的关系。.NET Framework 1.0、1.1和2.0之间是彼此完全独立的,就是说无论计算机是否安装这三个版本之中任意一个,都可以再安装其他的 版本。当1.0 、1.1和2.0同时安装在同一计算机的时候,每个版本都有自己的公共语言运行时,类库和编译器等。因此,应用程序可以选择是针对1.0、1.1还是2.0中的一个。.NET Framework 3.5为2.0和3.0中的技术引入了新功能,并以新程序集的形式引入了其他技术,如下。1.LINQLINQ是VS 2008和.NET Framework 3.5中的新功能LINQ,语言集成查询(Language INtegrated Query)是一组用于c#和Visual Basic语言的扩展。它允许编写C#或者Visual Basic代码以查询数据库相同的方式操作内存数据。采用标准的、易于学习的查询模式。就是说,可以对此技术进行扩展以支持几乎任何类型的数据存储。基本概念从技术角度而言,LINQ定义了大约40个查询操作符,如select、from、in、where以及order by(C#)中。试用这些操作可以编写查询语句。不过,这些查询还可以基于很多类型的数据,每个数据类型都需要一个单独的LINQ类型。 经过了最近 20 年,面向对象编程技术在工业领域的应用已经进入了一个稳定的发展阶段。程序员现在都已经认同像 类、对象、方法这样的语言特性。考察现在和下一代的技术,一个新的编程技术的重大挑战开始呈现出来,即面向对象技术诞生以来并没有解决降低访问和整合信息数据( accessing and integrating information )的复杂度的问题。其中两个最主要访问的数据源与数据库和 XML 相关。 LINQ 提供了一条更常规的途径即给 .Net Framework 添加一些可以应用于所有信息源的具有多种用途的语法查询特性。相对比下,向开发语言和运行时( runtime )添加一些关系数据特性或者类似 XML 特性的方式,显然是前者更好。这些语法特性就叫做 .NET Language Integrated Query (LINQ) 。 包含 DLinq 和 XLinqLinq的内部执行原理浅析LINQ(Language Integrated Query)是Visual Studio 2008中的领军人物。借助于LINQ技术,我们可以使用一种类似SQL的语法来查询任何形式的数据。目前为止LINQ所支持的数据源有SQL Server、XML以及内存中的数据集合。开发人员也可以使用其提供的扩展框架添加更多的数据源,例如MySQL、Amazon甚至是Google Desktop。 一般来讲,这类查询语句的一个重要特点就是可以并行化执行。虽然有些情况下并行可能会带来一些问题,但这种情况非常少见。这样也就水到渠成地引出了PLINQ这个并行处理的LINQ类库。 PLINQ原名为Parallel LINQ,支持XML和内存中的数据集合。执行于远程服务器上的查询语句(例如LINQ to SQL)显然无法实现这个功能。 将LINQ语句转换为PLINQ语句极为简单只需要在查询语句中From子句所指定的数据源的最后添加.AsParallel()即可。随后Where、OrderBy和Select子句将自动改为调用这个并行的LINQ版本。 据MSDN Magazine介绍,PLINQ可以以三种方式执行。第一种是管道处理:一个线程用来读取数据源,而其他的线程则用来处理查询语句,二者同步进行虽然这个单一的消费线程可能并不那么容易与多个生产线程同步。不过若是能够仔细配置好负载平衡的话,仍然会极大地减少内存占用。 第二种模式叫做“stop and go”,用于处理结果集需要被一次返回时(例如调用ToList、ToArray或对结果排序)的情况。在这种模式下,将依次完成各个处理过程,并将结果统一返回给消费线程。这个模式在性能上将优于第一种模式,因为它省去了用来保持线程同步所花费的开销。 最后一种方法叫做“inverted enumeration”。该方法并不需要实现收集到所有的输出,然后在单一的线程中处理,而是将最终调用的函数通过ForAll扩展传递到每个线程中。这是目前为止最快的一种处理模式,不过这需要传递到ForAll中的函数是线程安全的,且最好不包含任何lock之类的互斥语句。 若是PLINQ中任意的一个线程抛出异常,那么所有的其他线程将会被终止。若是抛出了多个异常,那么这些异常将被组合成一个MultipleFailuresException类型的异常,但每个异常的调用堆栈仍会被保留。 关于LINQ的技巧从大的方面来看它能给开发团队带来的好处: 1、无需复杂学习过程即可上手 2、编写更少代码即可创建完整应用。 3、更快开发错误更少的应用程序。 4、无需求助奇怪的编程技巧就可合并数据源。 5、让新开发者开发效率更高。2。外接程序和扩展性.NET Framework.3.5中的System.AddIn.dll程序集对可扩展应用程序提供了强大而灵活的支持。它引入了新的结构和模型,可帮助开发人员完成向应用程序添加扩展性的初始化工作;并确保开发人员的扩展在宿主应用程序发生更改时,仍可以继续的工作。3。WPFWPF是一种NET Framework类型,可用于创建Windows客户端应用程序的可观外观。它包括许多功能,如可扩展应用程序标记语言(XAML)、控件、数据绑定、布局、二维和三维图形、动画、样式、模板、文档、媒体、文本和版式等。提供更佳的用户体验,用来开发Windows Forms程序以及流览器应用程序在.NET Framework.3.5中,对WPF有许多改进,包括版本控制,应用程序模型,数据绑定,控件,文档,批注和三维UI元素。WPF(Windows Presentation Foundation)是微软推出的基于Windows Vista的用户界面框架,属于.NET Framework 3.0的一部分。它提供了统一的编程模型、语言和框架,真正做到了分离界面设计人员与开发人员的工作;同时它提供了全新的多媒体交互用户图形界面。简介WPF为Windows Presentation Foundation的缩写 ,其原来代号为“Avalon”,因“我佩服”拼音首字母组合一样,国内有人调侃地称之为“我佩服”。WPF是微软新一代图形系统,运行在.NET Framework 3.0架构下,为用户界面、2D/3D 图形、文档和媒体提供了统一的描述和操作方法。基于DirectX 9/10技术的WPF不仅带来了前所未有的3D界面,而且其图形向量渲染引擎也大大改进了传统的2D界面,比如Vista中的半透明效果的窗体等都得益于WPF。 程序员在WPF的帮助下,要开发出媲美Mac程序的酷炫界面已不再是遥不可及的奢望。 WPF相对于Windows客户端的开发来说,向前跨出了巨大的一步,它提供了超丰富的.NET UI 框架,集成了矢量图形,丰富的流动文字支持flow text support,3D视觉效果和强大无比的控件模型框架。 Windows Presentation FoundationWindows Presentation Foundation(以前的代号为“Avalon”)是 Microsoft 用于 Windows 的统一显示子系统,它通过 WinFX 公开。它由显示引擎和托管代码框架组成。Windows Presentation Foundation 统一了 Windows 创建、显示和操作文档、媒体和用户界面 (UI) 的方式,使开发人员和设计人员可以创建更好的视觉效果、不同的用户体验。 Windows Presentation Foundation 发布后(计划在 2006 年),Windows XP、Windows Server 2003 和以后所有的 Windows 操作系统版本都可以使用它。 Windows Presentation Foundation 由两个主要部分组成:引擎和编程框架。 1. Windows Presentation Foundation 引擎。Windows Presentation Foundation 引擎统一了开发人员和设计人员体验文档、媒体和 UI 的方式,为基于浏览器的体验、基于窗体的应用程序、图形、视频、音频和文档提供了一个单一的运行时库。Windows Presentation Foundation 使得应用程序不仅能够充分利用现代计算机中现有的图形硬件的全部功能,而且能够利用硬件将来的进步。例如,Windows Presentation Foundation 的基于矢量的呈现引擎使应用程序可以灵活地利用高 DPI 监视器,而无需开发人员或用户进行额外的工作。 同样,当 Windows Presentation Foundation 检测到支持硬件加速的视频卡时,它将利用硬件加速功能。 2. Windows Presentation Foundation 框架。Windows Presentation Foundation 框架为媒体、用户界面设计和文档提供的解决方案远远超过开发人员现在所拥有的。Windows Presentation Foundation 的设计考虑了可扩展性,使开发人员可以完全在 Windows Presentation Foundation 引擎的基础上创建自己的控件,也可以通过对现有 Windows Presentation Foundation 控件进行再分类来创建自己的控件。Windows Presentation Foundation 框架的核心是用于形状、文档、图像、视频、动画、三维以及用于放置控件和内容的面板的一系列控件。这些“自有控件”为开发下一代用户体验提供了构造块。 Microsoft 在引入 Windows Presentation Foundation 的同时,还引入了 XAML,这是一种公开表示 Windows 应用程序用户界面的标记语言,可使开发人员和设计人员用来构建和重用 UI 的工具更加丰富。对于 Web 开发人员,XAML 提供了熟悉的 UI 说明模式。XAML 还使 UI 设计从基础代码中分离出来,从而使开发人员和设计人员之间的合作更加紧密。 选择理由为什么选择 Windows Presentation Foundation? 对于企业,Windows Presentation Foundation 实现了改进的客户关系和不同的应用程序。通过提供能够快速提供更好的视觉效果、独特的用户体验的技术,来建立与客户的密切关系,使企业可以建立稳定的数字客户关系和独特的品牌化机会。而且,由于 Windows Presentation Foundation 是窗体、文档、视频、三维以及其他功能的综合,因此企业可以创建持久的用户体验解决方案,并集成到客户的日常活动中。 对于开发人员和设计人员,Windows Presentation Foundation 提供了统一的 UI 平台,因此他们只需学习一个模式,就可以获得无限可能的 UI 体验。对于 .NET 开发人员,其框架是熟悉的,并且它最终将减少提供最佳用户体验和通信逻辑所需的代码行数。对于设计人员,Windows Presentation Foundation 提供的平台可消除内容、媒体和应用程序之间的边界。最重要的是,Windows Presentation Foundation 可以使开发人员和设计人员同步紧密地合作来快速提供不同的连通体验。 响应程度目前已有很多人开始考虑或者已经转向WPF,一场新的学习热潮已经开始。但根据我最近的学习和了解,国内关于WPF的资料很少,除了msdn提供的资料以外,基本都是来自国外的资料,有些则是国外开发人员blog上的资料,当然都是英文的。因此如果现在能够引进一些WPF的书绝对是很好的时机。而且国外目前的几本WPF书也是刚刚上市,如果我们可以尽快引进的话,绝对可以帮助国内开发人员在最短时间内赶上国际步伐。 目前国内即时通讯领导商腾讯Tencent已经发布了一款基于WPF的QQ 概念版(QQ 概念版:QQ 概念版应用微软最新一代客户端展现层技术(WPF),实现多点触摸操作,是腾讯首款NUI(自然用户交互)产品,推出了动感相框、动态背景、多Tab聊天窗口、3D交互、桌面好友等一系列新功能,为您打造完美尊贵的新体验。),带给网友全新的体验;由于该产品还处于开发期,许多功能都还有待完善,不过QQ概念版的出现,又让即时通讯领域带来了新的体验与享受。 服务和支持随着Vista RTM的发布,微软新一轮的技术推广已经开始。其实在此之前,WPF已经有很大的推广,因为CTP版本已经发布了有一段日子了。当然很多开发人员主要以技术研究为主,也有少数公司已经开始从事基于WPF的产品研发工作。 1. 目前WPF的正式版本已经发布(随.net framework 3.0正式版发布),你可以从msdn上免费下载 2. 相应的技术支持已经开始,但目前仅限于大客户,主要做售前技术支持,对于普通开发人员的技术支持可能要等到明年2月份才会开始(个人知道的情况,请以微软官方技术支持网站发布的信息为准) 3. WPF的VS2005插件目前还只有社区预览版(CTP版),也是从msdn上免费下载的,但正式版恐怕还要等一段时间,但使用CTP版本确实已经可以在VS2005中进行所见即所得的WPF开发。 4. WPF/E CTP版本已经发布,你可以在msdn上免费下载。同时发布的还有WPF/E Sample Pack for CTP。 前景分析WPF其实不仅仅是图形引擎而已,它将给Windows应用程序的开发带来一次革命,因为新的架构提供了一种全新的开发模式。当然对于普通用户而言,最直观的就是界面越来越漂亮,看起来越来越舒服了;但对于开发人员而言,界面显示和代码将更好的得到分离,这与从前的桌面应用程序开发有很多不同(界面设置和代码是融合在一起的),这是比较具有革命性的改变之一。 还有就是桌面应用程序和浏览器应用程序的融合,根据ms的承诺,正在开发中的WPF/E,即WPF Everywhere版本,将为基于WPF的应用程序提供全面的浏览器支持,这意味着未来开发出的应用程序将可以基于浏览器在不同的操作系统上运行,当然由于目前还在开发中,并不确定会不会有一定的限制,根据WPF/E开发组的定义,WPF/E仍然是WPF的子集,而不是后继版本。总体而言,WPF的前景应该是一片光明。4.WCF和ASP.NET Ajax集成 WCF与ASP.NET中的,异步JavaScript和XML(Ajax)功能的集成提供了一个端对端的模型,可用于构建使用WCF服务的Web应用程序。WCF概述Windows Communication Foundation (WCF) 是由微软发展的一组数据通信的应用程序开发接口,它是.NET框架的一部分,由 .NET Framework 3.0 开始引入,与 Windows Presentation Foundation 及 Windows Workflow Foundation 并行为新一代 Windows 操作系统以及 WinFX 的三个重大应用程序开发类库。在 .NET Framework 2.0 以及前版本中,微软发展了 Web Service (SOAP with HTTP communication),.NET Remoting (TCP/HTTP/Pipeline communication) 以及基础的 Winsock 等通信支持,由于各个通信方法的设计方法不同,而且彼此之间也有相互的重叠性(例如 .NET Remoting 可以开发 SOAP, HTTP 通信),对于开发人员来说,不同的选择会有不同的程序设计模型,而且必须要重新学习,让开发人员在使用中有许多不便。同时,面向服务架构 (Service-Oriented Architecture) 也开始盛行于软件工业中,因此微软重新查看了这些通信方法,并设计了一个统一的程序开发模型,对于数据通信提供了最基本最有弹性的支持,这就是 Windows Communication Foundation。 概念WCF 由于集合了几乎由 .NET Framework 所提供的通信方法,因此学习曲线比较陡峭,开发人员必须要针对各个部份的内涵做深入的了解,才能够操控 WCF 来开发应用程序。 通信双方的沟通方式,由合约来订定。通信双方所遵循的通信方法,由协议绑定来订定。通信期间的安全性,由双方约定的安全性层次来订定。 合约(Contract)WCF 的基本概念是以合约 (Contract) 来定义双方沟通的协议,合约必须要以接口的方式来体现,而实际的服务代码必须要由这些合约接口派生并实现。合约分成了四种: 数据合约 (Data Contract),订定双方沟通时的数据格式。服务合约 (Service Contract),订定服务的定义。操作合约 (Operation Contract),订定服务提供的方法。消息合约 (Message Contract),订定在通信期间改写消息内容的规范。一个 WCF 中的合约,就如同下列代码所示: using System; using System.ServiceModel; namespace Microsoft.ServiceModel.Samples ServiceContract(Namespace = http:/Microsoft.ServiceModel.Samples) / 服务合约 public interface ICalculator OperationContract / 操作合约 double Add(double n1, double n2); OperationContract / 操作合约 double Subtract(double n1, double n2); OperationContract / 操作合约 double Multiply(double n1, double n2); OperationContract / 操作合约 double Divide(double n1, double n2); 协议绑定 (Binding)由于 WCF 支持了 HTTP,TCP,Named Pipe,MSMQ,Peer-To-Peer TCP 等协议,而HTTP 又分为基本 HTTP 支持 (BasicHttpBinding) 以及 WS-HTTP 支持 (WsHttpBinding),而 TCP 亦支持 NetTcpBinding,NetPeerTcpBinding 等通信方式,因此,双方必须要统一通信的协议,并且也要在编码以及格式上要有所一致。 一个设置通信协议绑定的示例如下: 虽然 WCF 也可以使用 SOAP 做通信格式,但它和以往的 ASP.NET XML Web Services 不同,因此有部分技术文章中,会将 ASP.NET 的 XML Web Services 称为 ASMX Service。 WCF 的服务可以挂载于 Console Application,Windows Application,IIS (ASP.NET) Application,Windows Service 以及 Windows Activation Services 中,但大多都会挂在 Windows Service。 安全性层次WCF 实现上已经支持了传输层次安全性 (Transport-level security) 以及消息层次安全性 (Message-level security) 两种。 传输层次安全性:在数据传输时期加密,例如 SSL。消息层次安全性:在数据处理时就加密,例如使用数字签名,散列或是使用密钥加密法等。 客户端对于 WCF 的客户端来说,WCF 服务就像是一个 Web Service 一样,在 Visual Studio 2008 中,所有 WCF 服务的连接都是由客户端的 服务代理(WCF Service Proxy) 来运行,开发人员不用花费太多心思在通信上,而 WCF Service Proxy 在 Visual Studio 中被称为服务引用 (Service Reference)。 在 Visual Studio 中加入 WCF 的服务参考

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论