• [织梦吧]唯一域名:www.dedecms8.com,织梦DedeCMS学习平台.

当前位置: > 编程与数据库 > net编程 >

OData的实际应用-通过开放数据协议构建富Internet应用程序(4)

来源: www.dedecms8.com 编辑:织梦吧 时间:2012-06-27点击:

 

从 SharePoint 提供数据

在前述部分中,我为您展示了如何提供关系数据库中存储的数据,以及房地产网站的房产和销售清单信息。让我们假设我还有负责出售房产的代理人信息,但这些数据存储在 SharePoint 站点中。Microsoft SharePoint 2010 提供了相应功能,可以将所有列表和列表中的文档作为 OData 源提供。这非常适合该房地产网站,因为这意味着该公司员工输入的代理人信息可作为 OData 源使用,可以包含在我构建的销售清单应用程序中。使用 SharePoint 接口负责输入和更新此数据的用户不必更改其工作流程来适应我的应用程序。输入到公司 SharePoint 站点的数据在即将创建的 Listings 应用程序中实时可用。

图 5 显示了简单的 SharePoint 门户,房地产代理人可用来记录和更新其联系信息。

图 5 代理人信息的 SharePoint 站点

在 SharePoint 系统中安装适用于 .NET Framework 3.5 SP1 的 ADO.NET 数据服务更新后,对于每个将清单数据作为 OData 源提供的站点来说,将有一个新的 HTTP 端点可以使用。由于 OData 源要使用 HTTP 进行访问,因此使用 Internet Explorer 即可查看。图 6 显示了 SharePoint 中代理人清单的源。

图 6 SharePoint 代理人服务的代理人源

 

使用来自 OGDI 的参考数据

默认情况下,OData 源将为源返回 ATOM 表示形式,当从 Web 浏览器访问时,结果将是 ATOM 源。如果请求的接受标头改为“application/json”,结果将是 JSON 源形式的相同数据。

图 6 中的源以代表一组实体的 <feed> 元素开始。每个源中包含了一组 <entry> 元素,每个元素都代表源中的一个实体(前三个实体元素已折叠,以便在一个屏幕中显示整个源)。

在此示例中,实体有一个已定义的并发标记,因此源中的每个实体都有一个 etag 属性。当对所请求的实体进行变更时,数据服务使用 etag 标记来强制执行并发检查。每个实体都使用 <entry> 标记进行了格式化,并且由一组链接组成。这些链接包含编辑实体时用到的链接以及实体的关系。每个关系链接都指向另一个实体或一组实体(分别称为引用属性和导航属性)。每个 <entry> 元素还包括一个 <m:properties> 元素,其中包含实体的基元类型和复杂类型属性;属性值由实体的属性名称和该属性的值组成。

Open Government Data Initiative (OGDI) 是构建在 Microsoft Windows Azure 平台上的一项服务,方便政府部门发布各种各样的公开数据。OGDI 项目提供了一个入门工具包,政府部门可以使用它来提供其数据。例如埃得蒙顿市已使用该入门工具包来提供其政府数据,ogdisdk.cloudapp.net 的一项服务提供了包含华盛顿特区的各种数据的数据集。另一个示例是 Microsoft Codename“Dallas”项目,旨在帮助任何拥有数据集的用户简便地将数据作为 Web 服务提供。此项目也构建在 Windows Azure 平台上,使用 OData 来提供数据。这些都是要提供大量参考数据以便进一步由 Web 应用程序使用的高端服务示例。正如我将演示的,当这些服务使用 OData 提供其数据时,通过各种应用程序来使用这些数据是非常简单的。

如前所述,OGDI 网站提供有关华盛顿特区的可用公开数据。Contoso 的房地产应用程序用于浏览该区域的销售清单,当用户查看特定的区域时,如果可以使用针对该区域的此类参考数据,将非常有帮助。当我为示例应用程序创建客户端时,我将演示如何包含来自 OGDI 网站的 OData 源,作为应用程序的数据源之一。

About D8

  • ©2014 织梦吧(d8) DedeCMS学习交流平台
  • 唯一网址 www.DedeCMS8.com 网站地图
  • 联系我们 1170734538@qq.com ,  QQ