BT

迈向Data 2.0——学习使用ADO.NET数据服务框架

作者 朱永光 发布于 2008年8月14日 | 被首富的“一个亿”刷屏?不如定个小目标,先把握住QCon上海的优惠吧!

随着.NET Framework 3.5 SP1和Visual Studio 2008 SP1的正式发布ADO.NET数据服务框架(ADO.NET Data Services Framework)也正式来到了我们的面前。近日,MSDN Magazine发布了标题为《在 Web 服务领域公开和使用数据》的文章,阐述了ADO.NET数据服务框架的基本理念、体系结构、服务端数据模型、访问协议、安全性和客户端访问。

在本文中,作者把ADO.NET数据服务框架定义为:

总的来说,ADO.NET 数据服务框架的目标是为那些公开和使用以数据为中心的服务,创建基于具象状态传输 (REST) 的简单框架。此类服务使用统一的界面公开数据,以供整个企业 Intranet 或 Internet 范围内的所有 Web 客户端使用。该框架由一个服务器库和一组客户端库组成,前者用于将数据作为服务安全公开,后者是为一系列 Microsoft 应用程序和技术(Microsoft? .NET Framework和Silverlight 等)能够使用服务而构建的。

ADO.NET数据服务框架在对数据模型的处理上,充分使用了ADO.NET实体框架(ADO.NET Entity Framework)的功能,尤其基于实体数据模型(Entity Data Model,EDM)对关系数据库进行映射和访问;而对于非关系数据,则依靠IQueryable接口来公开。

在讨论Web的技术时,安全性是重点需要关注的问题,而ADO.NET数据服务框架则依靠ASP.NET和WCF现存的大量安全性机制,来实现身份验证、访问授权等功能。

文章的后半段,着重讲解了对ADO.NET数据服务框架进行访问的知识。要访问ADO.NET数据服务和访问常规的WCF Services是一致的。不过ADO.NET数据服务框架已经提供了相应的程序集或工具包,这些客户端库来帮助我们更容易地编写访问ADO.NET数据服务的代码。其中包括:

  • .NET 客户端库:为Windows Forms、WPF、Web应用程序提供System.Data.Services.Client.dll程序集。
  • Silverlight 客户端库:已经和Silverlight 2 Beta 2一起发布,同样还是在Silverlight项目中引用System.Data.Services.Client.dll程序集。
  • AJAX 客户端库:在CodePlex上ASP.NET项目中下载

通过对ADO.NET数据服务框架学习和使用,并结合相关技术,对于以数据(Data)为中心的应用,我们就可以从之前在Client-Server的模型下直接对数据库(即所谓的Data 1.0)的访问,转变为在Rich Internet Application(RIA)的模型下对数据服务(即所谓的Data 2.0)的访问,从而迈向Data 2.0。

另外,ccBoy在他的一篇博客文章中也对ADO.NET数据服务框架给予了很高的评价:

ADO.NET数据服务逐渐成为一个非常不错的工具和武器,它完美地和ADO.NET实体框架相结合,可以说很大程度上弥补了EF目前分布式开发的短板,同时Data Services本身也成功地削弱了WCF原来基于SOAP的组件通信的沉重,可以说利用了WCF最好的部分。

同时,他也提供了一个Self-Hosting实例,这种模式让以数据为中心的RIA应用程序,实现单机运行的模式。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

ccBoy又发表了《Astoria (ADO.NET Data Service)客户端操作精粹》的博文 by Chu Kevin

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

1 讨论
提供反馈
错误报告
商务合作
内容合作
Marketing
InfoQ.com及所有内容,版权所有 © 2006-2016 C4Media Inc. InfoQ.com 服务器由 Contegix提供, 我们最信赖的ISP伙伴。
北京创新网媒广告有限公司 京ICP备09022563号-7 隐私政策
BT

We notice you’re using an ad blocker

We understand why you use ad blockers. However to keep InfoQ free we need your support. InfoQ will not provide your data to third parties without individual opt-in consent. We only work with advertisers relevant to our readers. Please consider whitelisting us.