既存の Windows サービスでディストリビューターを自己ホストしようとしています。私は MSMQ トランスポートを使用しています。バスの作成方法は次のとおりです。
NServiceBus.Configure.With()
.DefaultBuilder()
.EnlistWithDistributor()
.JsonSerializer()
.UseTransport<Msmq>()
.UnicastBus()
.CreateBus()
.Start();
デフォルトの Queue 名 (Assembly 名前空間から自動的に派生) をオーバーライドする必要があります。次の方法で EndPointConfig を定義しようとしましたが、残念ながら、Q 名は変更されませんでした。
[NServiceBus.EndpointName("custon.queue.name")]
public class EndpointConfig : NServiceBus.IConfigureThisEndpoint, NServiceBus.AsA_Publisher
{
public EndpointConfig()
{
}
}
構成セクション
<configSections>
<section name="MessageForwardingInCaseOfFaultConfig" type="NServiceBus.Config.MessageForwardingInCaseOfFaultConfig, NServiceBus.Core"/>
<section name="AuditConfig" type="NServiceBus.Config.AuditConfig, NServiceBus.Core"/>
<section name="UnicastBusConfig" type="NServiceBus.Config.UnicastBusConfig, NServiceBus.Core"/>
<section name="TransportConfig" type="NServiceBus.Config.TransportConfig, NServiceBus.Core"/>
</configSections>
<AuditConfig QueueName="audit"/>
<MessageForwardingInCaseOfFaultConfig ErrorQueue="error"/>
<TransportConfig MaximumConcurrencyLevel="10" MaxRetries="3" MaximumMessageThroughputPerSecond="10"/>
<UnicastBusConfig>
<MessageEndpointMappings>
<add Messages="Protocols" Endpoint="custom.queue.name@localhost"/>
</MessageEndpointMappings>
</UnicastBusConfig>
自己ホスティング時に使用されるキューの名前をオーバーライドするにはどうすればよいですか?
どんな助けでも大歓迎です。