HTTPS を使用して Windows サービス バスに接続しようとしています。これが私のアプリ構成設定です:
<appSettings>
<add key="Microsoft.ServiceBus.ConnectionString" value="Endpoint=https://example-service.servicebus.windows.net/;SharedSecretIssuer=owner;SharedSecretValue=example-shared-secret-value"/>
</appSettings>
接続を作成しようとしているコードは次のとおりです。
return SubscriptionClient.CreateFromConnectionString(ConnectionString, RequestTopicName,
SubscriptionName, ReceiveMode.ReceiveAndDelete);
ただし、次のエラーがスローされ、機能していません。
接続文字列を使用して MessagingFactory を作成できません。指定された URI スキーム「https」は無効です。「sb」が必要です。詳細については、内部例外を参照してください。接続文字列を確認してから、やり直してください。詳細については、 http: //go.microsoft.com/fwlink/?LinkID=249089を参照してください。
そして内部の例外:
指定された URI スキーム「https」は無効です。「sb」が必要です。Microsoft.ServiceBus.Messaging.Sbmp.SbmpMessagingFactory..ctor (IEnumerable 1 baseAddresses, NetMessagingTransportSettings settings)
at Microsoft.ServiceBus.Messaging.NetMessagingTransportSettings.Microsoft.ServiceBus.Messaging.ITransportSettings.BeginCreateFactory(IEnumerable
1 physicalUriAddresses、AsyncCallback コールバック、オブジェクト状態) で Microsoft.ServiceBus.Messaging.MessagingFactorySettings.OnBeginCreateFactory (IEnumerable 1 uriAddresses, AsyncCallback callback, Object state)
at Microsoft.ServiceBus.Messaging.MessagingFactorySettings.BeginCreateFactory(IEnumerable
1 uriAddresses、AsyncCallback コールバック、オブジェクト状態) で Microsoft.ServiceBus. Messaging.MessagingFactory.CreateMessagingFactoryAsyncResult..ctor(MessagingFactorySettings 設定、IEnumerable 1 addresses, TimeSpan timeout, AsyncCallback callback, Object state)
at Microsoft.ServiceBus.Messaging.MessagingFactory.BeginCreate(IEnumerable
1 アドレス、MessagingFactorySettings factorySettings、TimeSpan タイムアウト、AsyncCallback コールバック、オブジェクトの状態)1 addresses, MessagingFactorySettings factorySettings, AsyncCallback callback, Object state)
at Microsoft.ServiceBus.Messaging.MessagingFactory.BeginCreate(IEnumerable
1 つのアドレス、TokenProvider tokenProvider、AsyncCallback コールバック、オブジェクト状態) Microsoft.ServiceBus.Messaging.MessagingFactory.Create (IEnumerable 1 addresses, TokenProvider tokenProvider)
at Microsoft.ServiceBus.Messaging.Configuration.KeyValueConfigurationManager.CreateFactory(IEnumerable
1 エンドポイント、IEnumerable`1 stsEndpoints、String operationTimeout、String issuerName、String issuerKey、String ドメイン、String ユーザー、SecureString パスワード)
https .example- service.servicebus.windows.net の代わりにsb .example-service.servicebus.windows.netを使用するように接続文字列を変更すると機能しますが、実際には SB の代わりに HTTPS を使用する必要があります。
クライアントが「sb」を期待している理由はありますか? 「https」を使用するようにクライアントを構成するにはどうすればよいですか。