同じ名前空間内の異なるアドレスを持つ2つの異なるリレーエンドポイントによって公開されているサービスをアクティブ化できません。それらの1つを削除すると、サービスが正常にアクティブ化されるため、構成は正常です。バインディングのタイプを変更し、名前空間を変更し、1つだけではなく2つの動作構成を追加しようとしましたが、常に同じエラーが発生します(下部)。
私が何かを逃しているかどうか誰かが知っていますか?同じ名前空間に2つのリレーエンドポイントを含めることはできますか?
<service name="Service">
<endpoint contract="IService" binding="basicHttpRelayBinding" name="b1 "
address="http://**NAMESPACE**.servicebus.windows.net/s1" behaviorConfiguration="credentials"/>
<endpoint contract="IService" binding="webHttpRelayBinding" name="wh1"
address="https://**NAMESPACE**.servicebus.windows.net/s2" behaviorConfiguration="credentials"/>
</service>
<behavior name="credentials">
<serviceRegistrySettings discoveryMode="Public" displayName="Auxiliar" />
<transportClientEndpointBehavior>
<tokenProvider>
<sharedSecret issuerName="owner" issuerSecret="**KEY**" />
</tokenProvider>
</transportClientEndpointBehavior>
</behavior>
エラーは次のとおりです。
ExceptionDetail。おそらくIncludeExceptionDetailInFaults=trueによって作成され、その値は次のとおりです。System.ArgumentException:コレクションに同じタイプのアイテム'Microsoft.ServiceBus.NameSettings'が既に含まれているため、値をコレクションに追加できませんでした。このコレクションは、各タイプの1つのインスタンスのみをサポートします。パラメータ名:System.Collections.Generic.KeyedByTypeCollectionのアイテム
1.InsertItem(Int32 index, TItem item) at Microsoft.ServiceBus.ServiceRegistrySettings.System.ServiceModel.Description.IEndpointBehavior.AddBindingParameters(ServiceEndpoint endpoint, BindingParameterCollection bindingParameters) at System.ServiceModel.Description.DispatcherBuilder.AddBindingParameters(ServiceEndpoint endpoint, BindingParameterCollection parameters) at System.ServiceModel.Description.DispatcherBuilder.GetBindingParameters(ServiceHostBase serviceHost, Collection
1エンドポイント)at System.ServiceModel.Description.ServiceMetadataBehavior.MetadataExtensionInitializer.GenerateMetadata()at System.ServiceModel.Description.ServiceMetadataExtension.EnsureInitialized()at System.ServiceModel.Description.ServiceMetadataExtension.HttpGetImpl.InitializationData.InitializeFrom(ServiceMetadataExtension System.ServiceModel.Description.ServiceMetadataExtension.HttpGetImpl.ProcessHttpRequest(Message httpGetRequest )at SyncInvokeGet(Object、Object []、Object [])atSystem.ServiceModel.Dispatcher.SyncMethodInvoker。System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc&rpc)at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc&rpc)at System.ServiceModel.DispatcherでInvoke(Object instance、Object [] input、Object []&outputs) System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)の.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc&rpc)Process(ブールisOperationContextSet)Process(ブールisOperationContextSet)