Azure事件中心处理器不能与企业代理

时间:2016-06-20 14:43:51

标签: azure-eventhub

我正在使用Azure事件中心发件人和处理器教程,而我正坐在企业代理之后。

将事件发送到事件中心的工作非常正常,但我有问题让eventHubProcessor访问Azur事件中心。在我看来,我有一些代理问题。

我用

  • DefaultEndpointProtocol = https

作为存储连接字符串,我设置

  • ServiceBusEnvironment.SystemConnectivity.Mode = ConnectivityMode.Https;

我还尝试了许多不同的变体来在App.config文件中设置代理。 E.g。

<configSections>
    <sectionGroup name="proxyGroup">
      <section name="basicProxy" type="Proxy.Configuration.CustomProxySection, Proxy" />
    </sectionGroup>
  </configSections>

 <system.net>
    <defaultProxy enabled="true" useDefaultCredentials="true" >
      <proxy usesystemdefault="true"/>
    </defaultProxy>
  </system.net>

没有任何成功:(

at&#34; eventProcessorHost.RegisterEventProcessorAsync(options).Wait();&#34;我得到了例外

  InnerException: 
   HResult=-2146233087
   Message=Der angeforderte Name ist gültig, es wurden jedoch keine Daten des angeforderten Typs gefunden
   Source=Microsoft.ServiceBus
   StackTrace:
     Server stack trace: 
     Exception rethrown at [0]: 
        bei Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result)
        bei Microsoft.ServiceBus.Messaging.Amqp.Transport.WebSocketTransportInitiator.Complete(IAsyncResult connectAsyncResult, Boolean completeSynchronously)
     Exception rethrown at [1]: 
        bei Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result)
        bei Microsoft.ServiceBus.Messaging.Amqp.AmqpMessagingFactory.ConnectAsyncResult.<GetAsyncSteps>b__9d(ConnectAsyncResult thisPtr, IAsyncResult r)
        bei Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.StepCallback(IAsyncResult result)
     Exception rethrown at [2]: 
        bei Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result)
        bei Microsoft.ServiceBus.Messaging.Amqp.AmqpMessagingFactory.EndCreateConnection(IAsyncResult result)
        bei Microsoft.ServiceBus.Messaging.Amqp.FaultTolerantObject`1.CreateAsyncResult.<GetAsyncSteps>b__1(CreateAsyncResult thisPtr, IAsyncResult r)
        bei Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.StepCallback(IAsyncResult result)
     Exception rethrown at [3]: 
        bei Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result)
        bei Microsoft.ServiceBus.Common.AsyncResult`1.End(IAsyncResult asyncResult)

有没有人有想法? 非常感谢您的时间。

问候,罗兰

1 个答案:

答案 0 :(得分:0)

问题的原因是ServicePointManager在HTTPS的情况下不支持代理。

要解决问题,请将所有内容更改为HTTP

在您的主程序中:

string storageConnectString=string.Format("DefaultEndpointsProtocol=http;....");
ServiceBusEnvironment.SystemConnectivity.Mode = ConnectivityMode.Http;

在你的App.config

<system.net>
  <defaultProxy enabled="true" useDefaultCredentials="true" >
    <proxy
      autoDetect="false"
      bypassonlocal="true"
      proxyaddress="http://##.###.###.###:8080"
      usesystemdefault="false"/>
  </defaultProxy>
</system.net>