Как настроить режим подключения ServiceBusEnvironment

Служба WCF размещается в IIS и использует netTCPRelayBinding,

В некоторых местах порты TCP заблокированы, и необходимо использовать HTTP. В других случаях порты TCP открыты, и этот режим предпочтителен.

Таким образом, я хотел бы иметь возможность установить ConnectivityMode в AutoDetect (или просто HTTP) декларативно в web.config файл.

Для собственного размещения WCF это легко сделать:

ServiceBusEnvironment.SystemConnectivity.Mode = ConnectivityMode.AutoDetect;

Как это сделано декларативно в web.config?

1 ответ

На данный момент нет элемента конфигурации для этого параметра, однако в вашем файле web.config вы можете использовать AppSettings для установки значения

<appSettings>
   <add key="ServiceBusConnectivityMode" value="Http" />
</appSettings>

Затем в коде вы должны прочитать значение ключа и разобрать его в значение enum

ServiceBusEnvironment.SystemConnectivity.Mode = (ConnectivityMode)Enum.Parse(typeof(ConnectivityMode), ConfigurationManager.AppSettings["ServiceBusConnectivityMode"])
Другие вопросы по тегам