如何将cosmosdb文档列表转换为哈希表并向其添加值

时间:2019-03-25 15:27:46

标签: hashmap azure-cosmosdb azure-cosmosdb-sqlapi

我目前正在尝试将我从cosmosdb查询中获取的文档列表转换为地图,以便可以迭代对象元素而无需使用其id。我想删除一些元素,也想将一些数据附加到元素上。最后,我想用此数据输出一个Json文件。我该怎么办?

例如:

{
    "action": "A",
    "id": "138",
    "validate": "yes",
    "BaseVehicle": {
        "id": "105"
    },
    "Qty": {
        "value": "1"
    },
    "PartType": {
        "id": "8852"
    },
    "BatchNumber": 0,
    "_attachments": "attachments/",
    "_ts": 1551998460
}

Should Look something like this:

  "type": "App",
  "data": {
    "attributes": {
      "Qty": {
        "values": [
          {
            "source": "internal",
            "locale": "en-US",
            "value": "1"
          }
        ]
      },
      "BaseVehicle": {
        "values": [
          {
            "source": "internal",
            "locale": "en-US",
            "value": "105"
          }
        ]
      },
      "PartType": {
        "values": [
          {
            "source": "internal",
            "locale": "en-US",
            "value": "8852"
          }
        ]
      },
    }
  }
}

1 个答案:

答案 0 :(得分:1)

您可以在Azure数据工厂中使用Copy Activity来实现您的要求。

1。编写一个API,以从cosmos db查询数据,并使用代码将数据处理为所需的格式。

2。输出所需的结果,并将http连接器配置为复制活动的源。请参阅此link

3。将Azure Blob存储配置为复制活动的接收器。dataset properties支持JSON格式。请参阅此link