私はAzure Logic SDKを使用して論理アプリケーションの再発頻度と間隔を更新しようとしていますし、それがこのエラーメッセージ更新トリガ周波数使用してAPI
Microsoft.Rest.Azure.CloudExceptionで失敗しています:ワークフロー 'kk-test-logic-app'のパッチ適用リクエストはサポートされていません。 プロパティオブジェクト内のどのフィールドもパッチすることはできません。
ここに、私が何をしようとしているかを示すコードスニペットがあります。
var workflow = await _client.Value.Workflows.GetAsync(resourceGroupName, workflowName);
dynamic workflowDefinition = workflow.Definition;
workflowDefinition.triggers[triggerName]["recurrence"] = JToken.FromObject(new { frequency = triggerFrequency, interval = triggerInterval });
await _client.Value.Workflows.UpdateAsync(resourceGroupName, workflowName, workflow);
ここで_clientはLazy<LogicManagementClient>
です。私は成功したなどのみ更新操作があるワークフロー、workflowRuns、workflowTriggersを取得することができる午前
"triggers": {
"When_a_new_email_arrives": {
"recurrence": {
"frequency": "Hour",
"interval": 2
},
"splitOn": "@triggerBody()?.value",
"type": "ApiConnection",
"inputs": {
"host": {
"api": {
"runtimeUrl": "https://logic-apis-southindia.azure-apim.net/apim/office365"
},
"connection": {
"name": "@parameters('$connections')['office365']['connectionId']"
}
},
"method": "get",
"path": "/Mail/OnNewEmail",
"queries": {
"folderPath": "Inbox",
"importance": "Any"
}
}
}
}
注:ここでは
私は更新しようとしているトリガーの定義である(フィドラーを使用しました)失敗する。 SDKを使用してワークフローのプロパティを更新する方法に関するアイデアはありますか?UPDATE:以下のコメントにアモール - MSFTで指摘したように 、これは欠陥であると回避策として、私は現在CreateOrUpdateAsync代わりのUpdateAsyncを使用しています。 A new defectがGitHubで作成され、SDK開発チームの関心を集めています。
現在、特定のメールアドレスから新しいメールを受信したときにトリガーが30秒ごとに実行され、正常に動作しています。私が提供したコードを使用して、再発頻度を30秒から2時間に変更しようとしています。これは私がやっているPOCだけであり、プロダクションコードは大きく異なっていることに注意してください。 – Karthikeyan
ニースキャッチ。ソースコードの問題を指摘してくれてありがとう。 [CreateOrUpdateAsync](https://github.com/Azure/azure-sdk-for-net/blob/psSdkJson6/src/SDKs/Logic/Management.Logic/Generated/WorkflowsOperations.cs#L729)を見ると、私はそのCreateOrUpdateAsyncはPUT HTTPメソッドを使用します。 CreateOrUpdateAsyncを使用するようにコードを変更すると、再発頻度が正しく更新されるようになりました。 – Karthikeyan
あなたの問題が解決したと聞いてうれしいです。役に立つ回答を回答としてマークしてください。それは他の人が同じような問題を迅速に見つけて解決するのに役立ちます。 – Amor