BizTalk WCF-WebHttp - Как добавить параметр в URL с тем же именем - PullRequest
0 голосов
/ 20 февраля 2019

QueryString обычно допускает пары имя / значение, где одно и то же имя может встречаться несколько раз.При использовании WCF-WebHttp и BtsHttpUrlMapping для вызова службы REST он сопоставляется со схемой свойств, которая не позволяет повторять элемент, и в которой отображение URL не позволяет добавлять один и тот же параметр более одного раза.

Мне нужно добавить массив параметров, таких как: / query? Param1 = x¶m1 = y и т. Д.

Я вынужден использовать динамический порт и задать URL-адрес в оркестровке?Любые другие предложения или образцы будут очень уместны.

1 Ответ

0 голосов
/ 21 февраля 2019

Если это фиксированное число повторяющихся переменных, просто сопоставьте их со схемой, в которой они называются неповторяющимися.

например,

<value>xvalue</value>
<value>yvalue</value>

отображается на

<x>xvalue</x>
<y>yvalue</y>

URL Mapping

/query?param1={x}&amp;param1={y}

Если это переменная, но фиксированное максимальное количество элементов, используйте приведенное выше, но также установите свойство BTS.Operation и получите

<BtsHttpUrlMapping>
      <Operation Name='Retrieve1' Method = 'GET' Url='/query?param1={x}' 
      <Operation Name='Retrieve2' Method = 'GET' Url='/query?param1={x}&amp;param1={y}' />
      <Operation Name='Retrieve3' Method = 'GET' Url='/query?param1={x}&amp;param1={y}&amp;param1={z}' />
      ... 
</BtsHttpUrlMapping>
...