销售电话: 1-800-867-1380

比较固定查询类型和灵活查询类型

更新时间: 2014年2月

 

DataMarket 徽标

Marketplace 使用 OData 源公开数据。开放式数据协议 (OData) 是用于查询和更新数据的 Web 协议,可让你解锁数据,以及从当今应用程序存在的信息孤岛中释放数据。OData 应用和依赖于 HTTP、Atom 发布协议 (AtomPub) 和 JSON 等 Web 技术,让用户从各种应用程序、服务和存储访问信息,从而实现上述目标。

OData 与 Web 的工作原理相一致 - 它使用 URI 来标识资源,并使用基于 HTTP 的统一接口标识来与这些资源进行交互。借助 OData,服务使客户端能够针对添加筛选器、排序和类似功能的源动态构建查询,或者允许服务提供固定查询方法(类似于其他 Web 服务终结点),使用这种方法时,客户端必须提供特定的参数集或子集,并获取内容所有者确定的特定结果集。Marketplace 发布利用这两种查询的服务。可用于数据集的查询类型在数据集的“详细信息”页上指定,如下图中所示。

灵活查询数据集允许你在查询数据集时添加可选的参数名称/值筛选器 (columnName = dataValue),以及 Marketplace 支持的 OData 查询选项数组。有关 Marketplace 支持哪些查询选项的详细信息,请参阅支持的 OData 查询选项

当你开发使用灵活查询数据集的应用程序时,请使用 Visual Studio 的“添加服务引用”生成强类型化的 .NET 类,然后,你可以使用它来从应用程序内部调用 OData 服务。有关更多信息,请参见Step 2: Add the Service Reference for your Data Service

固定查询数据集允许你调用内容发布者提供的预定义查询方法。查询方法可以包含一组可用于在查询中添加约束筛选的必需和/或可选参数。你可以查找数据集“详细信息”页中包含的任何固定查询数据集的必需和/或可选参数列表。

对于支持固定查询的数据服务,Visual Studio“添加服务引用”当前不支持代码生成。支持固定查询的任何数据集都为数据集提供了一个预先创建的代理类。购买订阅后,数据集“详细信息”页上会显示代理类文件。代理类使用 WCF 数据服务客户端库来创建一个可调用 OData 服务的强类型化 .NET 类。有关更多信息,请参见创建固定查询应用程序

若要确定数据集支持的查询类型,请参阅以下确定查询类型部分。

在继续操作之前,请确保你满足以下条件:

  • 拥有一个有效的 Windows Live ID 帐户。如果你没有 Live ID,请转到 Windows Live 主页并注册。

  • 拥有一个有效的 Marketplace 帐户。如果你没有 Marketplace,请转到主题创建 Marketplace 帐户,并按照该处的说明进行操作。

  • Data.gov 2006-2008 Crime in the United States 数据集的订阅。如果你未订阅此数据集,请转到订阅数据产品,并按照说明进行操作。

 

部分 说明

URI 示例

灵活查询和固定查询 URI 示例。

确定查询类型

确定数据集是否支持灵活查询或固定查询的步骤。

 

URI URI 说明

https://api.datamarket.azure.com/data.ashx/contoso.com/salesreport/GetSalesReport?region=northamerica

用于访问北美 Contoso, Ltd. 销售报表数据的灵活查询。

https://api.datamarket.azure.com/data.ashx/contoso.com/salesreport/GetSalesReport

用于访问 Contoso, Ltd. 销售报表数据的灵活查询。
由于未指定任何参数,结果集未筛选,查询将返回系统中的所有销售报表。

https://api.datamarket.azure.com/Data.ashx/adatum.com/CensusInfo/GetCensusData

用于访问 A. Datum, Inc. 服务中最新人口普查数据的、不带必需参数的固定查询。

在 Marketplace 提供的下载 C# 服务类中,对 GetCensusData 的调用是数据访问方法。

https://api.datamarket.azure.com/Data.ashx/thephone-company.com/accountbalance/GetAccountBalance?phonenumber=5551234567

用于访问 The Phone Company Marketplace 服务中特定帐户余额数据的、带一个必需参数的固定查询。
如果未提供必需的参数名称/值对,查询将会失败。

在 Marketplace 提供的下载 C# 服务类中,对 GetAccountBalance 的调用是数据访问方法。

Important重要提示
不带参数的灵活查询将返回未筛选的结果集。
参数个数错误(太少或太多)的固定查询将会失败。

有关构建用于查询 OData 服务的 URI 的详细信息,请参阅 OData.org 上的 OData URI 约定

某些数据集只允许固定查询、不带参数的查询,或带有必需参数/值对的查询。其他数据集允许灵活查询,以及包含用于筛选结果集的可选参数/值对的查询。了解你的数据集需要哪些类型的查询。

  1. 单击“我的数据”选项卡。

  2. 单击你要在应用程序中使用的数据集名称右侧的“使用”一词。

  3. 向下滚动到页面中数据集说明下面的选项卡。

  4. 单击“详细信息”选项卡。

  5. 找到服务根 URL 下面描述查询类型的文本行。此示例适用于灵活查询。

    查询类型


    图 1 – 查询类型

本文是否对您有所帮助?
(1500 个剩余字符)
感谢您的反馈
显示:
© 2015 Microsoft