你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
IDocumentClient.ReplaceDocumentAsync 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
ReplaceDocumentAsync(Document, RequestOptions, CancellationToken) |
将 Document Azure Cosmos DB 服务中的 作为异步操作替换。 |
ReplaceDocumentAsync(String, Object, RequestOptions, CancellationToken) |
将 Document Azure Cosmos DB 服务中的 作为异步操作替换。 |
ReplaceDocumentAsync(Uri, Object, RequestOptions, CancellationToken) |
将文档替换为 Azure Cosmos DB 服务中的异步操作。 |
ReplaceDocumentAsync(Document, RequestOptions, CancellationToken)
将 Document Azure Cosmos DB 服务中的 作为异步操作替换。
public System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>> ReplaceDocumentAsync (Microsoft.Azure.Documents.Document document, Microsoft.Azure.Documents.Client.RequestOptions options = default, System.Threading.CancellationToken cancellationToken = default);
abstract member ReplaceDocumentAsync : Microsoft.Azure.Documents.Document * Microsoft.Azure.Documents.Client.RequestOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>>
Public Function ReplaceDocumentAsync (document As Document, Optional options As RequestOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of ResourceResponse(Of Document))
参数
- options
- RequestOptions
(可选) 请求的请求选项。
- cancellationToken
- CancellationToken
(可选) A CancellationToken ,其他对象或线程可以使用它来接收取消通知。
返回
包含 System.Threading.Tasks 的 , ResourceResponse<TResource> 它包装 Document 包含已更新资源记录的 。
例外
如果未 document
设置 。
此异常可以封装许多不同类型的错误。 若要确定特定错误,请始终查看 StatusCode 属性。 创建文档时可能会获取的一些常见代码包括:
StatusCode | 异常原因 |
---|---|
404 | NotFound - 这意味着尝试删除的资源不存在。 |
示例
此示例使用 Document 并利用它是动态对象的事实,并使用 SetProperty 动态更新文档的属性
//Fetch the Document to be updated
Document doc = client.CreateDocumentQuery<Document>(collectionLink)
.Where(r => r.Id == "doc id")
.AsEnumerable()
.SingleOrDefault();
//Update some properties on the found resource
doc.SetPropertyValue("MyProperty", "updated value");
//Now persist these changes to the database by replacing the original resource
Document updated = await client.ReplaceDocumentAsync(doc);
另请参阅
适用于
ReplaceDocumentAsync(String, Object, RequestOptions, CancellationToken)
将 Document Azure Cosmos DB 服务中的 作为异步操作替换。
public System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>> ReplaceDocumentAsync (string documentLink, object document, Microsoft.Azure.Documents.Client.RequestOptions options = default, System.Threading.CancellationToken cancellationToken = default);
abstract member ReplaceDocumentAsync : string * obj * Microsoft.Azure.Documents.Client.RequestOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>>
Public Function ReplaceDocumentAsync (documentLink As String, document As Object, Optional options As RequestOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of ResourceResponse(Of Document))
参数
- documentLink
- String
要更新的文档的链接。 例如 dbs/db_rid/colls/col_rid/docs/doc_rid/
- options
- RequestOptions
(可选) 请求的请求选项。
- cancellationToken
- CancellationToken
(可选) A CancellationToken ,其他对象或线程可以使用它来接收取消通知。
返回
包含 System.Threading.Tasks 的 , ResourceResponse<TResource> 它包装 Document 包含已更新资源记录的 。
例外
documentLink
如果未设置 或 document
。
此异常可以封装许多不同类型的错误。 若要确定特定错误,请始终查看 StatusCode 属性。 创建文档时可能会获取的一些常见代码包括:
StatusCode | 异常原因 |
---|---|
404 | NotFound - 这意味着尝试删除的资源不存在。 |
示例
在此示例中,我们将使用自己的 POCO 对象,而不是使用强类型 Document,而不依赖于 Document 类的动态特性。
public class MyPoco
{
public string Id {get; set;}
public string MyProperty {get; set;}
}
//Get the doc back as a Document so you have access to doc.SelfLink
Document doc = client.CreateDocumentQuery<Document>(collectionLink)
.Where(r => r.Id == "doc id")
.AsEnumerable()
.SingleOrDefault();
//Now dynamically cast doc back to your MyPoco
MyPoco poco = (dynamic)doc;
//Update some properties of the poco object
poco.MyProperty = "updated value";
//Now persist these changes to the database using doc.SelLink and the update poco object
Document updated = await client.ReplaceDocumentAsync(doc.SelfLink, poco);
另请参阅
适用于
ReplaceDocumentAsync(Uri, Object, RequestOptions, CancellationToken)
将文档替换为 Azure Cosmos DB 服务中的异步操作。
public System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>> ReplaceDocumentAsync (Uri documentUri, object document, Microsoft.Azure.Documents.Client.RequestOptions options = default, System.Threading.CancellationToken cancellationToken = default);
abstract member ReplaceDocumentAsync : Uri * obj * Microsoft.Azure.Documents.Client.RequestOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Document>>
Public Function ReplaceDocumentAsync (documentUri As Uri, document As Object, Optional options As RequestOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of ResourceResponse(Of Document))
参数
- documentUri
- Uri
要更新的文档的 URI。
- document
- Object
更新的文档。
- options
- RequestOptions
(可选的) RequestOptions 请求的 。
- cancellationToken
- CancellationToken
(可选) A CancellationToken ,其他对象或线程可以使用它来接收取消通知。
返回
表示异步操作的服务响应的任务对象。