Лучший способ условно вызвать несколько веб-сервисов из MDT CustomSettings.ini?
У меня есть развертывание MDT, которое делает вещи немного по-другому в зависимости от сетевого расположения. В одном из мест у меня есть два веб-сервиса, которым мне нужно позвонить. Моя первоначальная неудачная попытка была:
[Settings]
Priority=DefaultGateway
[DefaultGateway]
10.0.0.1=LOCATION_A
10.100.0.1=LOCATION_B
[LOCATION_A]
Subsection=WebService1
Subsection=WebService2
[WebService1]
WebService=http://contoso.com/webservice1
[WebService2]
WebService=http://contoso.com/webservice2
Я быстро обнаружил, что это не работает, потому что вы можете иметь только один подраздел в разделе. Таким образом, лучшее, что я мог придумать, было сделать так, чтобы один веб-сервис вызывал другой. Это работает, но теперь, когда веб-сервисы развиваются и имеют других абонентов, мне приходится поддерживать несколько копий некоторых сервисов (то есть как связанных, так и свободных). Например,
[Settings]
Priority=DefaultGateway
[DefaultGateway]
10.0.0.1=LOCATION_A
10.100.0.1=LOCATION_B
[LOCATION_A]
Subsection=WebService1AndWebService2
[WebService1]
WebService=http://contoso.com/webservice1
[WebService2]
WebService=http://contoso.com/webservice2
[WebService1AndWebService2]
WebService=http://contoso.com/webservice1
Subsection=WebService2
Теперь у меня есть два места, где я должен поддерживать URL-адрес, параметры и т. Д. WebService1.
Есть ли лучший способ в CustomSettings.ini? Должен ли я просто прибегать к вызову веб-сервисов вручную из последовательности задач вместо того, чтобы пытаться выполнить это из CustomSettings.ini?
1 ответ
Разобрался лучше. Это позволяет вам легко включать / отключать веб-сервисы, которые вы хотите вызывать из разных DefaultGateways, но вы не сможете по-разному настраивать порядок между ними.
[Settings]
Priority=DefaultGateway,FLAG_WebService1,FLAG_WebService2
Properties=FLAG_WebService1,FLAG_WebService2
[DefaultGateway]
10.0.0.1=LOCATION_A
10.100.0.1=LOCATION_B
[LOCATION_A]
FLAG_WebService1=FLAG_YES_WebService1
FLAG_WebService2=FLAG_YES_WebService2
[FLAG_YES_WebService1]
WebService=http://contoso.com/webservice1
[FLAG_YES_WebService2]
WebService=http://contoso.com/webservice2