bag_set_key()
bag_set_key() recebe um dynamic
recipiente de propriedades, uma chave e um valor. A função define a chave fornecida no recipiente como o valor fornecido. A função substitui qualquer valor existente caso a chave já exista.
Syntax
bag_set_key(
Saco,
Chave,
Valor)
Saiba mais sobre as convenções de sintaxe.
Parâmetros
Nome | Tipo | Obrigatório | Descrição |
---|---|---|---|
recipiente | dynamic |
✔️ | O recipiente de propriedades a ser modificado. |
chave | string |
✔️ | A chave a ser definida. Um caminho JSON (você pode especificar uma chave nos níveis aninhados usando a notação JSONPath ) ou o nome da chave para uma chave de nível raiz. Não há suporte para indexação de matriz ou caminhos JSON raiz. |
value | qualquer tipo de dados escalar | ✔️ | O valor para o qual a chave está definida. |
Retornos
Retorna um dynamic
recipiente de propriedades com pares chave-valor especificados. Se o recipiente de entrada não for um recipiente de propriedades, um null
valor será retornado.
Observação
Para tratar null
s como sacos vazios, use coalesce(x, dynamic({}))
.
Exemplos
Usar uma chave de nível raiz
datatable(input: dynamic) [
dynamic({'key1': 1, 'key2': 2}),
dynamic({'key1': 1, 'key3': 'abc'}),
]
| extend result = bag_set_key(input, 'key3', 3)
input | result |
---|---|
{ "key1": 1, "key2": 2 } |
{ "key1": 1, "key2": 2, "key3": 3 } |
{ "key1": 1, "key3": "abc" } |
{ "key1": 1, "key3": 3 } |
Usar uma chave JSONPath
datatable(input: dynamic)[
dynamic({'key1': 123, 'key2': {'prop1': 123, 'prop2': 'xyz'}}),
dynamic({'key1': 123})
]
| extend result = bag_set_key(input, '$.key2.prop1', 'abc')
input | result |
---|---|
{ "key1": 123, "key2": { "prop1": 123, "prop2": "xyz" } } |
{ "key1": 123, "key2": { "prop1": "abc", "prop2": "xyz" } } |
{ "key1": 123 } |
{ "key1": 123, "key2": { "prop1": "abc" } } |
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de