2013-06-29 3 views
1

Какова правильная конфигурация порта для служебной шины Windows (не Azure), чтобы стандартные привязки azure работали на служебной шине AppFabric?Конфигурация порта

В приведенном ниже примере я получаю «Невозможно достичь vm-sbdemo-petar через TCP (9351, 9352) или HTTP (80, 443)» при попытке открыть хост.

Конфигурация Service Bus (по умолчанию):

HTTPS Port     9355 
TCP Port     9354 
Message Broker Port   9356 
Resource Provider HTTPS Port 9359 
Amqp Port     5672 
Amqps Port     5671 
Internal Communication Port Range 9000 - 9004 

Ведущий:

app.config

<system.serviceModel> 
     <services> 
     <service name = "MyService"> 
      <endpoint 
       address = "sb://vm-sbdemo-petar/ServiceBusDefaultNamespace/MyService/" 
       binding = "netOnewayRelayBinding" 
       contract = "IMyContract" 
      /> 
     </service> 
     </services> 
    </system.serviceModel> 

главный

ServiceHost host = new ServiceHost(typeof(MyService)); 
     host.SetServiceBusCredentials("string"); 

     ConnectionStatusBehavior behavior = new ConnectionStatusBehavior(); 
     behavior.Connecting += OnConnecting; 
     behavior.Offline += OnOffline; 
     behavior.Online += OnOnline; 

     foreach(ServiceEndpoint endpoint in host.Description.Endpoints) 
     { 
     endpoint.Behaviors.Add(behavior); 
     } 
     host.Open(); 

     Console.WriteLine("Press ENTER to shut down service."); 
     Console.ReadLine(); 

     host.Close(); 

ответ

2

Служебная шина для Windows Server не поддерживает функцию ретрансляции, в настоящее время она доступна только на Azure Service Bus. Подробнее см .: http://msdn.microsoft.com/en-us/library/jj193022(v=azure.10).aspx

+0

Знаете ли вы, какие привязки WCF поддерживаются с помощью служебной шины Windows? –

+0

У нас есть очереди служебной шины и темы, доступные в версии Windows Server, поэтому они поддерживают использование netMessagingBinding. Образец можно найти здесь: http://code.msdn.microsoft.com/windowsazure/Brokered-Messaging-WCF-0a526451 –

+0

Этот пример не работает с Windows Service Bus из коробки. –

2

Попробуйте, если есть связанный прокси.

<system.net> 
<defaultProxy useDefaultCredentials="true"> 
</defaultProxy> 
</system.net> 
+0

Спасибо Vibhu, но все это работает внутри одной виртуальной машины. –