は、例えば1つのdocumentDbコレクションに保存する第二のコレクション内のドキュメントを更新/items/{documentId}
。文書はのようになります。Azureの機能をアプリにCosmosDB文書が作成されるたびに実行し、私たちはアイテムを持っているシナリオを、持っている
{
id: [guid],
rating: 5,
numReviews: 1
}
私は/user-reviews/{userIdAsPartitionKey}/{documentId}
の下で第2の文書コレクションを持っている文書はそうのようになります。このドキュメントのアップロード時に
{
id: [guid],
itemId: [guidFromItemsCollection],
userId: [userId],
rating: 4
}
を、私はへのトリガをしたいですこの新しいユーザー格付け文書を入力として受け取り、items
コレクションから関連する文書を検索し、新しいデータに基づいてitems
文書を変換することができます。
私の問題の核心は:どのように私は、ドキュメントのアップサートをオフにトリガすることができ、私はすべてのFuncitonアプリ内で、どのように取得し、別のコレクションからドキュメントを修正することができますか?
私はトリガがCosmosDBに可能であるという考えでいじめる以下のリンクを、調査してきましたが、テーブルには、我々は、文書のDBのアップロードにトリガをフックすることはできません示唆しています。 https://docs.microsoft.com/en-us/azure/azure-functions/functions-triggers-bindings https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-documentdb
それが直接設定することはできません場合は、私の仮定は、私は、この処理自体をキックオフすることができますアップサートを扱う中間層のサービスを(現在はクライアント側からDocumentClientを使用して)、持つべきですが、私は好き可能な場合はサーバレス機能アプリのシンプルさ。