你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
IDocumentClient.ReadDocumentFeedAsync 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
ReadDocumentFeedAsync(Uri, FeedOptions, CancellationToken) |
在 Azure Cosmos DB 服务中以异步操作的形式读取集合的文档的源 (序列) 。 |
ReadDocumentFeedAsync(String, FeedOptions, CancellationToken) |
从 Azure Cosmos DB 服务读取指定集合的文档的源 (序列) 。 这会返回一个 , ResourceResponse<TResource> 其中包含动态对象的可枚举列表。 |
ReadDocumentFeedAsync(Uri, FeedOptions, CancellationToken)
在 Azure Cosmos DB 服务中以异步操作的形式读取集合的文档的源 (序列) 。
public System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.FeedResponse<dynamic>> ReadDocumentFeedAsync (Uri documentCollectionUri, Microsoft.Azure.Documents.Client.FeedOptions options = default, System.Threading.CancellationToken cancellationToken = default);
abstract member ReadDocumentFeedAsync : Uri * Microsoft.Azure.Documents.Client.FeedOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.FeedResponse<obj>>
Public Function ReadDocumentFeedAsync (documentCollectionUri As Uri, Optional options As FeedOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of FeedResponse(Of Object))
参数
- documentCollectionUri
- Uri
父文档集合的 URI。
- options
- FeedOptions
(可选的) FeedOptions 请求的 。
- cancellationToken
- CancellationToken
(可选) A CancellationToken ,可供其他对象或线程用来接收取消通知。
返回
表示异步操作的服务响应的任务对象。
适用于
ReadDocumentFeedAsync(String, FeedOptions, CancellationToken)
从 Azure Cosmos DB 服务读取指定集合的文档的源 (序列) 。 这会返回一个 , ResourceResponse<TResource> 其中包含动态对象的可枚举列表。
public System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.FeedResponse<dynamic>> ReadDocumentFeedAsync (string documentsLink, Microsoft.Azure.Documents.Client.FeedOptions options = default, System.Threading.CancellationToken cancellationToken = default);
abstract member ReadDocumentFeedAsync : string * Microsoft.Azure.Documents.Client.FeedOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.FeedResponse<obj>>
Public Function ReadDocumentFeedAsync (documentsLink As String, Optional options As FeedOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of FeedResponse(Of Object))
参数
- documentsLink
- String
要读取的资源的 SelfLink。 例如 /dbs/db_rid/colls/coll_rid/docs/
- options
- FeedOptions
(可选) 请求的请求选项。
- cancellationToken
- CancellationToken
(可选) A CancellationToken ,可供其他对象或线程用来接收取消通知。
返回
一 System.Threading.Tasks 个 ,它包含一个 ResourceResponse<TResource> 表示源中的项的动态对象。
例外
如果未 documentsLink
设置 。
此异常可以封装许多不同类型的错误。 若要确定特定错误,请始终查看 StatusCode 属性。 创建文档时可能会获取的一些常见代码包括:
StatusCode | 异常原因 |
---|---|
404 | NotFound - 这意味着你尝试读取的资源源不存在。 检查父删除是否正确。 |
429 | TooManyRequests - 这意味着已超出每秒请求单位数。 请参阅 DocumentClientException.RetryAfter 值,了解在重试此操作之前应等待多长时间。 |
示例
int count = 0;
string continuation = string.Empty;
do
{
// Read the feed 10 items at a time until there are no more items to read
FeedResponse<dynamic> response = await client.ReadDocumentFeedAsync("/dbs/db_rid/colls/coll_rid/docs/",
new FeedOptions
{
MaxItemCount = 10,
RequestContinuation = continuation
});
// Append the item count
count += response.Count;
// Get the continuation so that we know when to stop.
continuation = response.ResponseContinuation;
} while (!string.IsNullOrEmpty(continuation));
注解
此方法利用 .NET 中的动态对象,而不是 FeedResponse{Document}。 这样一来,单个源结果可以包含任何类型的 Document 或 POCO 对象。 这一点非常重要,因为 DocumentCollection 可以包含不同类型的文档。