После одного месяца успешного сопоставления наш шаблон дает разные результаты без каких-либо изменений в процессе. Фрагмент XML выглядит следующим образом:
<Authorisation>
<Application>
</Application>
<Role>Role on</Role>
<Role>Role two</Role>
</Authorisation>
и отображение:
"roles":[
{% JSONArrayFor userRole in authorisation where Role-%}
{
"role":"{{userRole}}"
}
{% endJSONArrayFor -%}
]
Приложение Logic раньше создавало правильную коллекцию json, но теперь она внезапно пуста.
Я вижу, что authorisation.Role производит только первый элемент Role one и autorisation.Role.size дает 11. For loop вместо JSONArray For read role one char by char. Все это означает, что отображение считывает только первый элемент роли - коллекции нет
Проблема только для простого типа Xml (просто элемент xml со строковым значением). Мы обрабатываем сложные типы таким же образом, и это по-прежнему нормально.
Что-то внутреннее в Azure LogicApps изменило процесс сопоставления в прошлом месяце?