.NET 问题
1 什么是微软的.NET?
微软的 .NET 及 XML Web 服务平台包括:
一个建立.NET体验的软件平台
一个建立集成XML Web服务的编程模型和工具
一套可编程的XML Web服务
微软.NET能使用户通过Web与众多的智能设备交互,同时确保用户而不是应用程序控制这个交互。 微软.NET能使得用户对应用程序、服务、个性化设备的体验简单、一致而安全。
2 什么是.NET体验
微 软.NET体验是极具个性化的、综合的计算体验,它通过与XML Web服务相连的智能设备来实现。
个性化综合体验——与被提供者分开的信息竖井相反,NET体验以用户为中心,将数据和参数集成到单个应用程序中。
与XML Web服务连接——通过使用 XML 和 SOAP,根据用户需要为他们量身定做的一系列服务可被融入到单一而完整的体验中。
通过智能设备实现交互——用户通过与智能设备的交互体验.NET。智能设备是一种具有 Web功能的工具,如个人电脑、掌上电脑、智能电话,在这些设备中配上软件,这些软件使得它们在与用户、网络、信息及其它设备和服务的交互过程中更加智能化。
3 什么是.NET体验实例?
NET体验类似于一个用户与现行单个的应用程序交互,但有三个重要的不同点,现通过实例描述如下:
假设你想打开暖气,而你又不在家,这时你就可以进行一次.NET体验,即通过智能设备控制你的家用电器。如果此刻你在办公室里,你可以用你的桌上型电脑,如果你正开车去杂货店,你可以用你的智能电话, 如果你是在商场买菜,你则可以用多媒体信息亭。
这一实例中.NET的独特性在于:
每一个设备都为.NET体验产生一个不同的界面——桌上型电脑可能会显示一个地形图并接受鼠标输入。智能手机会给你语音选择并要求你按键选择。多媒体信息亭可能会有一个触摸屏和一组温度控制选项。你可用同一.NET体验完成同一任务,但是你看到的是适合于不同设备的截然不同的界面。
.NET体验是位置无关的——利用定位安装和基于Web应用程序两者各自的优势,.NET体验可同时在在线和脱机状态下进行,在前面的实例中,不管你在哪里:办公室、车里或商场,都可使用.NET体验。
.NET体验是个性化的——.NET体验读取存储在低层基础中的用户参数和配置信息,并自动将用户信息和参数结合在一起呈现出来。在前面的实例中,当你打开暖气,.NET体验根据你的登录ID已经知道你住在哪里,你不需要输入地址。
4 .NET提供了什么解决方案?
微软.NET解决目前软件开发中存在的几个核心问题:
软件开发关注的问题 .NET的解决方案
实现互用性、集成性和应用程序的可扩展能力难度大且费用昂贵。 使用由 W3C 管理的开放标准——XML——扫除了数据共享和软件集成的障碍。
软件技术版权的争夺使得集成变得困难。 微软.NET建立在一个开放的标准上,容纳了所有的程序设计语言。
最终用户没有简单而引人注目的体验,且最终用户不能轻松在应用程序间共享他们的数据数据或操作这些信息。 XML使得交换数据相当容易,一旦用户接收到数据,.NET软件便为用户提供处理数据的能力。
最终用户在Web上工作时不能控制个人信息和数据,注重个人隐私和安全方面消弱了基于Web软件的可接收性。 微软.NET提供一套中心服务,使用户管理个人信息并控制对这些信息的存取。
5 .NET对开发人员和IT业意味着什么
.NET是如何易于管理的?
随着当前应用软件的升级,Microsoft设计了许多工具和技术使.NET平台易于管理,目前的技术和产品包括:
Microsoft Windows 2000 Server 用于管理目录、事件、分布式客户。
Windows2000 Datacenter Server 确保可靠性。
Microsoft SQL Server 2000 管理XML数据。
Microsoft BizTalk Server 管理事件、进程、跨不同系统的合约。
Microsoft Application Center Server 管理群集
Digital Rights Management(DRM) 用于管理内容授权。
UDDI(Universal Description, Discovery, and Integration)使进第三方发展XML Web服务。
6 .NET是如何易于升级的?
通过使用.NET服务器技术——具备了动态更新和重用XML Web服务的能力以及分配跨设备的计算能力,从而使得.NET成为高水平的可伸缩平台。
Scale out 用 Windows2000 Sever, SQL Sever2000,和 Application Center 2000
Scale up 用Windows 2000 Sever and SQL Sever 2000
利用智能设备和XML Web服务打破动态线性缩放规则,通过将计算分布到网络边缘(在那里有足够的计算能力),服务器处理力瓶颈可以消除,通过简化作为基础应用软件的服务,将它们分布在网络上的任何地方,从而使得其它的瓶颈也可消除或者缩小。
7 .NET是如何进行安全和个人隐私保护的?
.NET将提供由用户自己控制数据的强有力的个人隐私保护,用户指定什么人和什么应用程序可以访问(存取)或更改他的个人数据。这种权限与延长特殊交易保护个人隐私的策略相关。
有效的安全需要把这些因素结合在一起:安全软件、良好的操作习惯、物理安全及许可协议。.NET平台的部分现行和即将推出的软件安全程序和技术包括:
Windows 2000 for Kerberos, Microsoft Active Directory 服务, PKI, EFS 和 IP Sec.
基础服务实现简化、保护个人隐私、安全体验,让所有用户控制他们拥有的数据。
在基础服务之上的XML消息接口,具备了审核能力并具有可说明性。
用于内容授权数字权力管理(DRM)。
.8 为什么开发人员要选.NET而不是其它XML平台?
微软.NET平台为开发人员提供了下列独树一织的特性:
通过.NET框架和工具(Visual Studio.NET)使建立集成的XML Web服务更简单、更快捷、更省钱。
由于智能设备和信息代理而使用户体验更丰富更引人注目。
由于以个人为中心的基础服务使.NET体验更加个性化和易于管理。
建立在以XML为核心的下一代软件基础之上。
9 .NET编程模型和工具的好处是什么?
Visual Studio.NET和.NET Framework为开发人员提供了下列好处:
最好、最快、最省钱的方法来建立XML Web服务;
高产和多语言环境来建立和运行XML Web服务;
能建立安全可升级应用软件并在多种设备上运行,节约保贵的时间和资源。
10 .NET是如何工作的
11 作为产品的.NET提供了什么?
微软.NET包括:
.NET平台——为XML Web服务开发人员提供的一套构建工具和操作系统。
.NET体验——最终用户与XML Web服务交互的一种手段。
12 .NET平台
.NET平台的组件
描述
.NET Framework 和 Visual Studio .NET 这些是开发人员工具,用来建立应用软件和XML Web服务。.NET Framework是一套位于.NET平台中心的编程接口。Visual Studio.NET是一套语言无关的开发人员工具。
.NET 服务器的基本构造: 操作XML Web服务的基础构造依赖于Windwos操作系统和.NET企业服务器,一套运行XML Web 服务的电子商务基础构造应用程序。这些服务器包括:
Application Center 2000能衡量解决方案;
BizTalk Server 2000通过应用软件或服务创立和管理基于XML的跨应用和服务的商也流程;
Microsoft Host Integration Server 2000用于存取基于主机的数据;
Microsoft Mobile Information 2001 Server使移动设备使用应用软件,如蜂窝电话(手机)等;
SQL Server 2000可存储和提取以创建的结构化XML数据;
基础服务: 基础服务是一套集成的XML Web服务,它以用户为中心,让用户控制数据成为可能,基础服务包括Passport护照(用于用户身份认证)和消息传送服务,文档储存,用户首选参数管理,日历管理和其它功能。 微软将在.NET 基础构造的关键之处是提供一些基础服务,各种合伙人和开发人员将扩展这些基础服务,你还可以看到建立在.NET平台上的共同和纵向的基础服务。 .NET 设备软件 包括Windows XP, Windows Me, Windows CE, Windows Embedded, .NET Framework, .NET Compact Framework,这些软件能使新型的智能Internet设备,膝上电脑,工作站等在 .NET的环境中工作。
13 .NET 体验
最终用户通过.NET 体验与软件交互,它传达一种新型的交互——独树一帜的个性化,集成的体验源自与XML Web服务的连接,并通过新型的智能设备来传达。
技术层面上,.NET体验是XML Web服务在适当的时候与本地应用代码的一种结合
微软正在把四种受欢迎的产品转换成 .NET体验:
14 微软产品 通过.NET而增强的功能
Microsoft Office
传统的Office功能加上Web服务特色,如:SmartTags--重要数据信息在线上下文连接。
MSN 完全的客户体验,包括从各种不同的公司获取服务。
MS Small Business Portal 中小型企业的丰富体验,包括管理企业财务和库存及自动使用象eBay这样的销售机制服务。
MS Visual Studio 开发系统 通过将动态MSDN数据和共同的编码标准集成在一起,从而为开发人员提供一个丰富的开发环境。
为什么.NET使用XML?
XML是Internet上数据交换的通用语言,为数据交换和转换提供广泛包容性和开放的标准技术,扫除了应用程序与服务之间交互和集成的障碍。
15 XML Web 服务和 Web 站点的区别是什么?
Web 站点是一幅幅数据画面,其数据局限在浏览器中查看,与Web站点不同,XML Web 服务可以直接被另一个服务或应用软件存取。XML Web 服务是可重用软件块,这些软件按照行业公认的标准(XML and SOAP)通过编程在网络上交互。XML Web 服务可以彼此间结合,也可以和其它应用软件结合来建立智能交互式.NET体验。
Web 站点 : 用户——应用程序
XML Web 服务 : 用户——应用程序
应用程序——应用程序
16 什么是"智能设备"?
.NET 利用智能设备软件使PC机、膝上电脑、工作站、智能电话、掌上电脑、Tablet PCs、游戏控制台和其它智能设备在.NET环境中运行,智能设备指:
因为你而智能——使用你的.NET身份,配置文件和数据简化你的体验,因你的存在而智能,允许定制通知响应你的存在或缺席。
因为网络而智能——对宽带约束作出应答,为在线和脱机应用软件提供支持,并了解哪些服务可用。
因为信息而智能——允许你随时随地存取、分析和操作数据。
因为其它设备而智能——找到并通告PCs 机、智能设备、服务器、Internet,知道如何为其它设备提供服务,因为存取PC机上的信息而智能。
因为软件和服务而智能——以最令人满意的形式呈现应用和数据,使输入方法和连通性以最佳状态适应最终用户的交互,用 SOAP 和 UDDI 消费 Web 服务,并且开发人员可编程和可扩展。
17 服务器是如何适合 .NET的?
微软提供了一套完整的服务器产品,它为企业和XML Web服务提供安全的、可升级的、高性能的执行环境,因为它们对XML提供深层支持,从而具有最好、最省钱的运行和管理XML Web服务的方法。
基础服务是如何适应.NET的?
.NET被设计成提供更简单、更加个性化的综合体验。以身份为中心的(Identity-centric)服务是与多种XML Web服务交互,并使它们能代表你而行动。为了实现这一目标,微软已开发私有和安全服务,这些服务都是围绕着身份,通知以及存储而建立的,它们可做为其它XML Web服务和.NET体验的基础服务。
18 在.NET中Windows的作用是什么?
现在,微软Windows所面向的最终智能设备是个人电脑,为个人电脑提供强大的功能。Windows XP将能够使用XML Web 服务,如图片服务,以及通过XML Web服务发布在Web上的实用程序。它将成为智能设备的一个网络中心,并将对下一代交互式对等网络计算,图片服务,实时交互及媒体服务产生影响。
Windows 的 Whistler Server 将包含对XML和SOAP的内建支持,这种支持将与.NET Framework捆绑在一起。
19 目前如何建立.NET体验?
下载Visual Studio.NET,然后开始,Visual Studio.NET代表了.NET Framework的一个完整的开发环境,允许编程人员使用他们知道的语言创建令人兴奋的,可重用的XML Web 服务。通过在BizTalk Server, SQL Sever和Windows 2000 Server上更深层地集成XML进一步使你有能力去管理和运行XML服务,通过把Passport集成到现存的Web应用程序中,软件设计师能提高当前用户体验,并为今后融入.NET轻松使用智能的,安全的身份识别做好准备。
20 在.NET平台上何时可使用XML Web服务?
数千名开发人员已经开始用.NET Framework, Visual Studio .NET 技术预览版建立XML Web服务了,使用SOAP和XML的XML Web服务每天都在创新,此外,微软将提供一组核心基础服务来促进.NET平台上的开发。重要的是已经获得Passport,并将随着.NET 平台的发展而继续得到增强。
.NET 介绍
Microsoft.NET是一项革命性的技术框架。.NET的核心技术包括分布式计算、XML、组件技术、即时编译技术等。分布式计算是网络的本质:XML奠定了新一代电子数据交换的标准,正是数据交换使网络计算成为可能;组件技术是软件技术多年来的发展成果,它使程序设计员从大量的API中解放出来,以采用面向对象和面向组件的技术来解决软件问题;即时编译技术使应用程序在运行时,还能够根据主机的硬件和软件环境进行代码优化,并简化代码发放的过程。
MicroSoft .NET平台的基本思想是:
侧重点从连接到互联网的单一网站或设备上,转移到计算机、设备和服务群组上,使其通力合作,提供更广泛更丰富的解决方案。用户将能够控制信息的传送方式、时间和内容。计算机、设备和服务将能够相辅相成,从而提供丰富的服务,而不是像孤岛那样,由用户提供唯一的集成。企业可以提供一种方式,允许用户将它们的产品和服务无缝地嵌入自己的电子构架中。这种思路将扩展二十世纪八十年代首先由PC赋予的个人权限。
MicroSoft .NET的策略:
是将互联网本身作为构建新一代操作系统的基础,对互联网和操作系统的设计思想进行合理延伸。这样,开发人员必将创建出摆脱设备硬件束缚的应用程序,以便轻松实现互联网连接。MicroSoft .NET无疑是当今计算机技术通向计算时代的一个非常重要的里程碑。
.NET的核心组件有:
一组用于创建互联网操作系统的构建块,其中包括Passport.NET(用于用户认证)以及用于文件存储的服务、用户首选项管理、日历管理以及众多的其它任务
构建和管理新一代服务的基本结构和工具,包括Visual Studio.NET、.NET企业服务器、.NET框架和Windows.NET
能够启用新型智能互联网设备的.NET设备软件
.NET用户体验
.NET对最终用户来说非常重要,因为计算机的功能将会得到大幅度提升,同时计算机操作也会变得非常简单。特别地,用户将完全摆脱人为的硬件束缚:用户可以自由冲浪于互联网的多维时空,而不是束缚在便携式电脑的方寸空间--可通过任何桌面系统、任何便携式电脑、任何移动电话或PDA进行访问,并可对其进行跨应用程序的集成。
.NET对开发人员来说也十分重要,因为它不但会改变开发人员的开发应用程序的方式,而且使得开发人员能创建出全新的各种应用程序。新型开发范例的核心是Web服务这个概念的引入。Web服务是一种通过简单对象访问协议(SOAP),在互联网上展露其功能性的、极为公开的服务。SOAP是一种基于可扩展标记语言(XML)制定的协议。
在过去,开发人员通过集成本地系统服务来构建应用程序。在这种模型下,开发人员可以访问丰富的开发资源并能严格控制应用程序的行为。
如今,开发人员已在很大程度上挣脱了这种模型的束缚,致力于构建具有复杂结构的n层化系统,这种系统能将网络上众多的应用程序一并进行集成,大大提升了应用程序的价值。这样,开发人员便可把精力集中在充分挖掘软件独特的商业价值,而不是构建基本结构上。
.NET平台的核心是,采用有效的、分门别类的方式来构建应用程序,达到其前所未有的规模。该平台上的Web服务模型指的是:企业应用程序的中心业务要素通常由本地管理,而支持它们的服务(如用户认证、文件存储、用户首选项管理、日历、邮件等等)却无须本地管理,可以被无缝订购。为了存储用户文件和邮件,IT专业人员往往在服务器上安装新的独立磁盘冗余阵列(RAID阵列),而有了.NET,他们在这一方面将会花费较少的精力,而更多地致力于怎样为公司增加效益。
N ET定能实现确保用户从任何地点、任何设备都可访问其个人数据和应用程序的宏伟蓝图。除此之外,.NET技术还可实现多个应用程序在逻辑上的松散耦合链接和紧密耦合链接。
用户可以通过手写、语音和图象技术与其个人数据进行交互。这些数据将安全地存放在互联网上,用户通过办公室(或家庭)PC,还可以通过移动电话或寻呼机、PDA、甚至是新发明的寻呼机--移动电话--PDA--PC联合设备访问这些数据。应用程序可进行灵活的功能调整,以适应用户所用设备的功能状况。应用程序可根据用户预定义的选项集和指令集,完全代替用户自动执行相应的操作。
4 Microsft .NET框架所提供的服务。
服务框架
框架包括一套开发人员希望在标准语言库中存在的基类库,例如:集合、输入/输出,字符串及数据类。另外,基类库提供访问操作系统服务如图画、网络、线程、全球化和加密的类。服务框架也包括数据访问类库,及开发工具,如调试和剖析服务,能够使用的类。
数据访问服务
为了提供对数据的访问,服务框架包括ActiveX Data Objects+ (ADO.NET)类库。ADO.NET由ADO发展而来。ADO+被设计为基于网络的可扩展的应用程序和服务提供数据访问服务。ADO.NET为连接的指针风格的数据访问,同时也为更适合于把数据返回到客户端应用程序的无连接的数据模板提供高性能的APIs流。
ADO.NET定义了那些链接数据仓库、 对数据仓库发送命令及从中获取结果的类。这些类由受控数据提供者(managed data provider)实现。ADO+中链接和命令对象看上去和ADO中的是一样的,并且一个名为DataReader的新类提供了通过高性能API流获取结果的能力。DataReader在功能上同前向、只读的ADO记录集(Recordset)是等同的,但是DataReader被设计用来最小化内存中生成的对象的数量,以提高性能,避免垃圾积累。在.NET Framework中包含了针对MicroSoft SQL Server的受控数据提供者以及可通过OLE DB访问的任何数据仓库。
ADO.NET的一个主要创新是引入了数据集(Dataset)。一个数据集是内存中提供数据关系图的高速缓冲区。数据集对数据源一无所知,它们可以由程序或通过从数据仓库中调入数据而被生成、填充,并且它使用相同的潜在的数据缓冲区。
受控数据提供者为数据仓库和数据集公开一名为DataSetCommand 的接口对象。DataSetCommand 使用ADO.NET链接和命令以从数据仓库中填充数据集,并把在数据集中发生的变化解析到数据仓库中。
所有的数据都可被看作XML,所以开发人员可以为任何数据使用转换和确认服务。ADO.NET定义了一个消费DataNavigator、生成一个新的XmlReader的通用转换体系。.NET Framework提供了一个支持W3C XSL Transformations (XSLT)细则的特殊转换组件。ADO.NET同时提供了一使用XML简图确认XmlReader的确认引擎。ADO.NET支持通过DTDs, XSD或 XDR定义的简图。
表单应用模板
编写Windows客户应用程序的开发人员可使用Win表单应用程序模板以利用Windows丰富的用户接口特点,包括现在的ActiveX控件和Windows 2000的新特点,如透明的、分层的、浮动窗口。可以选择传统的Windows或网络外观。得知它和现在的基于Windows表单包的相似性以后,开发人员会发现Win表单可编程模板和对设计阶段的支持非常直观。
Win 表单利用了Microsft .NET框架 runtime以减少基于Windows的客户应用程序的开销。只要应用程序和组件是用Win所写或被Win表单应用程序使用,那么它们就能被框架安全模板在客户机上安全地执行。
网络应用程序模板
ASP.NET的核心是HTTP运行语言,一个高性能的用于处理基于低级结构的HTTP请求的运行语言,而基于的结构与MicroSoft Internet Information Services (IIS)所提供的ISAPI结构相似。
HTTP 运行语言是在象服务器上的IIS或客户机上的IE之类的unmanaged 主机过程中运行的受控代码。HTTP runtime负责处理引入的所有HTTP请求,并对每个请求应用程序的URL进行解析,然后把请求分配到应用程序以进行进一步的处理。
ASP.NET使用基于构件的Microsft .NET框架配制模板,因此它获得了如XCOPY配制、构件并行配制、基于XML配制等优点。ASP.NET另一个主要优点是,它支持应用程序的实时更新。管理员不必关掉网络服务器或者甚至不用停止应用程序的运行就可以更新应用文件。
在应用程序中,HTTP请求先通过HTTP模块的一个管道路由,最终到达请求处理程序。HTTP模块和请求处理程序是一些实现特殊接口的受控类,而这些接口是由ASP.NET定义的。
ASP.NET同样提供高速缓冲服务,以改善性能。输出缓冲可完全节省网页翻译,段缓冲储存部分的网页。由于提供了相应的类,所以只要需要,应用程序、HTTP模块以及请求处理程序可以在高速缓存中储存任意数量的对象。
ASP.NET 网络表单
网络表单把基于Visual Basic的表单的高生产性的优点带到了网络应用程序的开发中来。网络表单支持传统的将HTML内容与脚本代码混合的ASP语法,但是它提出了一种将应用程序代码和用户接口内容分离的更加结构化的方法。引入的网络表单控件用于为封装通用用户接口元素提供了一种机制。
网络表单控件负责生成用户接口,典型情况是在HTML表单中。ASP.NET是提供了一套映射传统的HTML用户接口小部件(包括列表框,文本框和按钮)的网络表单控件和一套附加的更加复杂的网络控件(如日历和广告转板)。
代码与内容的分离使ASP.NET网页能动态地编译到受控类中,用以提高性能。每个引入的HTTP请求都被传递到一个新的网页实例,因此开发人员不需要关心代码中的线程安全性。
ASP.NET 网络-服务
ASP.NET 网络-服务体系架构为用ASP.NET建立网络服务提供了一高级可编程模板。虽然建立网络服务并不需要使用网络-服务平台,但是它提供许多的优点将简化开发过程,并且它使用的编程模型对用ASP或VB工作的开发人员来说是很熟悉的。使用这个可编程模型,开发人员不需要理解HTTP、SOAP或其它任何网络服务规范。
开发人员用ASP.NET生成一个扩展名为.asmx的文件,并把此文件配制为网络应用程序的一部分,就建立起了一个网络-服务。
ASP.NET 网络服务还提供了一个为在SCL文件中描述的网络服务生成分类的受控代理工具。代理生成器把SCL文件中描述的消息映射成受控类中的方法。
网络服务为在Internet上绑定应用程序提供了一个利用现存体系架构和应用程序的简单的、灵活的、基于许多标准的模型。
Microsft .NET框架在现有开发人员技巧之上,提供了一个应用程序模板和关键技术,用于简化安全、可靠、可扩展、高可用性的网络服务的建立、部署和不断的发展。