Data 2.0:在Web服务领域公开和使用数据2011-11-23 msdn Elisa Flasko本文基于 ASP.NET 3.5 的预发布版本和 Microsoft AJAX 库。文中的所有信息均有可能发生变更。本文将介绍以下内容:数据服务的含义公开和使用数据使用实体数据模型 描述数据数据安全性本文使用以下技术:ADO.NET 数据服务、LINQ 和实体数据模 型回想一下您上次构建的富 Internet 应用程序 (RIA)。您是如何获取您的数据的?又是如何区分该 数据与发送至浏览器的演示文稿和用户界面 (UI) 信息的?如果有更简单的方法来实现此操作,会怎样?分离演示文稿和数据并不是什么新构想,但随着 RIA 技术(如 AJAX 和 Silverlight™)的日 益普及,它已经越来越流行了。这些技术基于分离演示文稿和数据的思路构建,其目的在于开发出交互性 更强且响应更快的应用程序。例如,基于 Silverlight 的 RIA 应用程序可预编译代码来驱动演 示文稿,并通过 Web 服务器将该代码部署到客户端。然后,到达 Web 浏览器后,该代码将回调到 Web 服务器以检索要在用户界面中显示的数据。此类技术通常不需要选择服务器端呈现过程,因为这会混合数 据和演示文稿代码。除了分离演示文稿和数据以使 Web 体验更丰富、更具交互性之外,Web 还有 公开和使用独立于任何用户界面的独立数据的趋势。数据驱动的应用程序(如“资源聚合”) 的广泛应用表明,有意义且便于使用的数据的推广开创了新的应用程序方案。基于对这些趋势的 观察,ADO.NET 数据服务框架最初旨在帮助那些希望通过自己的 RIA 应用程序中的服务来公开和使用数 据的开发人员。探索该领域时,出现了两个主要理念:使用现有方法针对以数据为中心的服务构建通用客 户端库和工具这一观念本身,就很有难度;创建和维护这些服务需要投入大量的开发人员。在本文中,我 们将重点介绍什么是数据服务以及几个主要功能。总的来说,ADO.NET 数据服务框架的目标是为 公开和使用以数据为中心的服务创建基于具象状态传输 (REST) 的简单框架。此类服务使用统一的界面公 开数据,以供整个企业 Intranet 或 Internet 范围内的所有 Web 客户端使用。该框架由一个服务器库 和一组客户端库组成,前者用于将数据作为服务安全公开,后者是为一系列 Microsoft 应用程序和技术 (Microsoft® .NET Framework 和 Silverlight 等)能够使用服务而构建的。图 1 展示了该体系结 构。

图 1 ADO.NET 数据服务框架体系结构