你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
DocumentClient.UpsertTriggerAsync 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
UpsertTriggerAsync(String, Trigger, RequestOptions) |
在 Azure Cosmos DB 服务中将触发器作为异步操作更新插入。 |
UpsertTriggerAsync(Uri, Trigger, RequestOptions) |
在 Azure Cosmos DB 服务中将触发器作为异步操作更新插入。 |
UpsertTriggerAsync(String, Trigger, RequestOptions)
在 Azure Cosmos DB 服务中将触发器作为异步操作更新插入。
public System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Trigger>> UpsertTriggerAsync (string collectionLink, Microsoft.Azure.Documents.Trigger trigger, Microsoft.Azure.Documents.Client.RequestOptions options = default);
abstract member UpsertTriggerAsync : string * Microsoft.Azure.Documents.Trigger * Microsoft.Azure.Documents.Client.RequestOptions -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Trigger>>
override this.UpsertTriggerAsync : string * Microsoft.Azure.Documents.Trigger * Microsoft.Azure.Documents.Client.RequestOptions -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Trigger>>
Public Function UpsertTriggerAsync (collectionLink As String, trigger As Trigger, Optional options As RequestOptions = Nothing) As Task(Of ResourceResponse(Of Trigger))
参数
- collectionLink
- String
要向上插入触发器的 的链接 DocumentCollection 。 例如 dbs/db_rid/colls/col_rid/
- options
- RequestOptions
(此请求的可选) Any RequestOptions。
返回
表示异步操作的服务响应的任务对象。
实现
例外
collectionLink
如果未设置 或 trigger
。
表示异步处理期间发生的故障的合并。 在 InnerExceptions 中查找实际异常 ()
此异常可以封装许多不同类型的错误。 若要确定特定错误,请始终查看 StatusCode 属性。 创建文档时可能会获取的一些常见代码包括:
StatusCode | 异常原因 |
---|---|
400 | BadRequest - 这意味着所提供的请求出错。 可能是没有为新触发器提供 ID,或者正文格式不正确。 |
403 | 禁止 - 已达到提供的集合的触发器配额。 请联系支持人员以增加此配额。 |
409 | 冲突 - 这意味着 , Trigger 其 ID 与所提供的 ID 匹配。 |
413 | RequestEntityTooLarge - 这意味着尝试更新插入的 Trigger 正文太大。 |
示例
//Upsert a trigger that validates the contents of a document as it is created and adds a 'timestamp' property if one was not found.
Trigger trig = await client.UpsertTriggerAsync(collectionLink, new Trigger
{
Id = "ValidateDocuments",
Body = @"function validate() {
var context = getContext();
var request = context.getRequest();
var documentToCreate = request.getBody();
// validate properties
if (!('timestamp' in documentToCreate)) {
var ts = new Date();
documentToCreate['timestamp'] = ts.getTime();
}
// update the document that will be created
request.setBody(documentToCreate);
}",
TriggerType = TriggerType.Pre,
TriggerOperation = TriggerOperation.Create
});
另请参阅
适用于
UpsertTriggerAsync(Uri, Trigger, RequestOptions)
在 Azure Cosmos DB 服务中将触发器作为异步操作更新插入。
public System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Trigger>> UpsertTriggerAsync (Uri documentCollectionUri, Microsoft.Azure.Documents.Trigger trigger, Microsoft.Azure.Documents.Client.RequestOptions options = default);
abstract member UpsertTriggerAsync : Uri * Microsoft.Azure.Documents.Trigger * Microsoft.Azure.Documents.Client.RequestOptions -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Trigger>>
override this.UpsertTriggerAsync : Uri * Microsoft.Azure.Documents.Trigger * Microsoft.Azure.Documents.Client.RequestOptions -> System.Threading.Tasks.Task<Microsoft.Azure.Documents.Client.ResourceResponse<Microsoft.Azure.Documents.Trigger>>
Public Function UpsertTriggerAsync (documentCollectionUri As Uri, trigger As Trigger, Optional options As RequestOptions = Nothing) As Task(Of ResourceResponse(Of Trigger))
参数
- documentCollectionUri
- Uri
要向上插入触发器的文档集合的 URI。
- trigger
- Trigger
Microsoft.Azure.Documents.Trigger 对象。
- options
- RequestOptions
请求的请求选项。
返回
表示异步操作的服务响应的任务对象。