你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

DocumentClient.ReadDocumentAsync 方法

定义

重载

ReadDocumentAsync(String, RequestOptions, CancellationToken)

Document以异步操作的形式从 Azure Cosmos DB 服务读取 。

ReadDocumentAsync(Uri, RequestOptions, CancellationToken)

Document从 Azure Cosmos DB 服务以异步操作的形式读取 。

ReadDocumentAsync<T>(String, RequestOptions, CancellationToken)

Document从 Azure Cosmos DB 服务以泛型类型 T 作为异步操作读取 。

ReadDocumentAsync<T>(Uri, RequestOptions, CancellationToken)

Document从 Azure Cosmos DB 服务以泛型类型 T 作为异步操作读取 。

ReadDocumentAsync(String, RequestOptions, CancellationToken)

Document以异步操作的形式从 Azure Cosmos DB 服务读取 。

public System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>> ReadDocumentAsync (string documentLink, Microsoft.Azure.Documents.Client.RequestOptions options = default, System.Threading.CancellationToken cancellationToken = default);
abstract member ReadDocumentAsync : string * Microsoft.Azure.Documents.Client.RequestOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>>
override this.ReadDocumentAsync : string * Microsoft.Azure.Documents.Client.RequestOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>>
Public Function ReadDocumentAsync (documentLink As String, Optional options As RequestOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of ResourceResponse(Of Document))

参数

documentLink
String

要读取的文档的链接。

options
RequestOptions

(可选) 请求的请求选项。

cancellationToken
CancellationToken

(可选) A CancellationToken ,其他对象或线程可以使用它来接收取消通知。

返回

包含 System.Threading.Tasks 的 , ResourceResponse<TResource> 它包装 Document 包含读取资源记录的 。

实现

例外

如果未 documentLink 设置 。

此异常可以封装许多不同类型的错误。 若要确定特定错误,请始终查看 StatusCode 属性。 创建文档时可能会获取的一些常见代码包括:

StatusCode异常原因
404NotFound - 这意味着尝试读取的资源不存在。
429TooManyRequests - 这意味着已超出每秒请求单位数。 请参阅 DocumentClientException.RetryAfter 值,了解在重试此操作之前应等待多长时间。

示例

//This reads a document record from a database & collection where
// - sample_database is the ID of the database
// - sample_collection is the ID of the collection
// - document_id is the ID of the document resource
var docLink = "dbs/sample_database/colls/sample_collection/docs/document_id";
Document doc = await client.ReadDocumentAsync(docLink);

注解

读取资源是从数据库获取资源的最有效方法。 如果知道资源的 ID,请执行读取,而不是按 ID 进行查询。

显示的示例使用基于 ID 的链接,其中链接由创建资源时使用的 ID 属性组成。 如果愿意, SelfLink 仍然可以使用 Document 的 属性。 自链接是由资源标识符 (或_rid属性) 组成的资源的 URI。 基于 ID 的链接和 SelfLink 都将正常工作。 的格式 documentLink 始终为“dbs/{db identifier}/colls/{coll identifier}/docs/{doc identifier}”,仅更改中的 {} 值,具体取决于要用于寻址资源的方法。

另请参阅

适用于

ReadDocumentAsync(Uri, RequestOptions, CancellationToken)

Document从 Azure Cosmos DB 服务以异步操作的形式读取 。

public System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>> ReadDocumentAsync (Uri documentUri, Microsoft.Azure.Documents.Client.RequestOptions options = default, System.Threading.CancellationToken cancellationToken = default);
abstract member ReadDocumentAsync : Uri * Microsoft.Azure.Documents.Client.RequestOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>>
override this.ReadDocumentAsync : Uri * Microsoft.Azure.Documents.Client.RequestOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>>
Public Function ReadDocumentAsync (documentUri As Uri, Optional options As RequestOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of ResourceResponse(Of Document))

参数

documentUri
Uri

要读取的文档资源的 URI。

options
RequestOptions

请求的请求选项。

cancellationToken
CancellationToken

(表示请求取消的可选) CancellationToken

返回

包含 System.Threading.Tasks 的 , ResourceResponse<TResource> 它包装 Document 包含读取资源记录的 。

实现

例外

如果未 documentUri 设置 。

此异常可以封装许多不同类型的错误。 若要确定特定错误,请始终查看 StatusCode 属性。 阅读文档时可能会获取的一些常见代码包括:

StatusCode异常原因
404NotFound - 这意味着尝试读取的资源不存在。
429TooManyRequests - 这意味着已超出每秒请求单位数。 请参阅 DocumentClientException.RetryAfter 值,了解在重试此操作之前应等待多长时间。

示例

//Reads a Document resource where 
// - db_id is the ID property of the Database
// - coll_id is the ID property of the DocumentCollection
// - doc_id is the ID property of the Document you wish to read. 
var docUri = UriFactory.CreateDocumentUri("db_id", "coll_id", "doc_id");
Document document = await client.ReadDocumentAsync(docUri);

注解

读取资源是从服务获取资源的最有效方法。 如果知道资源的 ID,请执行读取,而不是按 ID 进行查询。

另请参阅

适用于

ReadDocumentAsync<T>(String, RequestOptions, CancellationToken)

Document从 Azure Cosmos DB 服务以泛型类型 T 作为异步操作读取 。

public System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.DocumentResponse<T>> ReadDocumentAsync<T> (string documentLink, Microsoft.Azure.Documents.Client.RequestOptions options = default, System.Threading.CancellationToken cancellationToken = default);
abstract member ReadDocumentAsync : string * Microsoft.Azure.Documents.Client.RequestOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.DocumentResponse<'T>>
override this.ReadDocumentAsync : string * Microsoft.Azure.Documents.Client.RequestOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.DocumentResponse<'T>>
Public Function ReadDocumentAsync(Of T) (documentLink As String, Optional options As RequestOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of DocumentResponse(Of T))

类型参数

T

参数

documentLink
String

要读取的文档的链接。

options
RequestOptions

(可选) 请求的请求选项。

cancellationToken
CancellationToken

(可选) A CancellationToken ,其他对象或线程可以使用它来接收取消通知。

返回

包含 System.Threading.Tasks 的 , DocumentResponse<TDocument> 它包装 Document 包含读取资源记录的 。

实现

例外

如果未 documentLink 设置 。

此异常可以封装许多不同类型的错误。 若要确定特定错误,请始终查看 StatusCode 属性。 创建文档时可能会获取的一些常见代码包括:

StatusCode异常原因
404NotFound - 这意味着尝试读取的资源不存在。
429TooManyRequests - 这意味着已超出每秒请求单位数。 请参阅 DocumentClientException.RetryAfter 值,了解在重试此操作之前应等待多长时间。

示例

//This reads a document record from a database & collection where
// - sample_database is the ID of the database
// - sample_collection is the ID of the collection
// - document_id is the ID of the document resource
var docLink = "dbs/sample_database/colls/sample_collection/docs/document_id";
Customer customer = await client.ReadDocumentAsync<Customer>(docLink);

注解

读取资源是从数据库获取资源的最有效方法。 如果知道资源的 ID,请执行读取,而不是按 ID 进行查询。

显示的示例使用基于 ID 的链接,其中链接由创建资源时使用的 ID 属性组成。 如果愿意, SelfLink 仍然可以使用 Document 的 属性。 自链接是由资源标识符 (或_rid属性) 组成的资源的 URI。 基于 ID 的链接和 SelfLink 都将正常工作。 的格式 documentLink 始终为“dbs/{db identifier}/colls/{coll identifier}/docs/{doc identifier}”,仅更改中的 {} 值,具体取决于要用于寻址资源的方法。

另请参阅

适用于

ReadDocumentAsync<T>(Uri, RequestOptions, CancellationToken)

Document从 Azure Cosmos DB 服务以泛型类型 T 作为异步操作读取 。

public System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.DocumentResponse<T>> ReadDocumentAsync<T> (Uri documentUri, Microsoft.Azure.Documents.Client.RequestOptions options = default, System.Threading.CancellationToken cancellationToken = default);
abstract member ReadDocumentAsync : Uri * Microsoft.Azure.Documents.Client.RequestOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.DocumentResponse<'T>>
override this.ReadDocumentAsync : Uri * Microsoft.Azure.Documents.Client.RequestOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.DocumentResponse<'T>>
Public Function ReadDocumentAsync(Of T) (documentUri As Uri, Optional options As RequestOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of DocumentResponse(Of T))

类型参数

T

参数

documentUri
Uri

要读取的文档资源的 URI。

options
RequestOptions

请求的请求选项。

cancellationToken
CancellationToken

(表示请求取消的可选) CancellationToken

返回

包含 System.Threading.Tasks 的 , DocumentResponse<TDocument> 它包装 Document 包含读取资源记录的 。

实现

例外

如果未 documentUri 设置 。

此异常可以封装许多不同类型的错误。 若要确定特定错误,请始终查看 StatusCode 属性。 阅读文档时可能会获取的一些常见代码包括:

StatusCode异常原因
404NotFound - 这意味着尝试读取的资源不存在。
429TooManyRequests - 这意味着已超出每秒请求单位数。 请参阅 DocumentClientException.RetryAfter 值,了解在重试此操作之前应等待多长时间。

示例

//Reads a Document resource where 
// - db_id is the ID property of the Database
// - coll_id is the ID property of the DocumentCollection
// - doc_id is the ID property of the Document you wish to read. 
var docUri = UriFactory.CreateDocumentUri("db_id", "coll_id", "doc_id");
Customer customer = await client.ReadDocumentAsync<Customer>(docUri);

注解

读取资源是从服务获取资源的最有效方法。 如果知道资源的 ID,请执行读取,而不是按 ID 进行查询。

另请参阅

适用于