【发布时间】:2023-03-14 04:10:02
【问题描述】:
我是 NService 总线的新手,我正在尝试使用 MSMQSubscrition storage 创建总线,但出现以下错误。
启动端点时出现异常, 错误已被记录。原因:错误 用名字创建对象 'NServiceBus.Unicast.Subscriptions.Msmq.MsmqSubscriptionStorage' :设置属性值时出错: PropertyAccessExceptionsException (1 错误);嵌套的 PropertyAccessExceptions 是: [Spring.Core.TypeMismatchException: 无法转换类型的属性值 [System.String] 到所需类型 [System.String] 用于属性“队列”。, 内部异常: System.ArgumentException:有一个 订阅存储问题 队列 。请参阅随附的例外情况 细节。 ---> System.Messaging.MessageQueueException: 格式名称无效。 在 System.Messaging.MessageQueue.MQCacheableInfo.get_Transactional() 在 System.Messaging.MessageQueue.get_Transactional() 在 NServiceBus.Unicast.Subscriptions.Msmq.MsmqSubscriptionStorage.set_Queue(字符串 值)在 d:\BuildAgent-02\work\672d81652eaca4e1\src\impl\unicast\NServiceBus.Unicast.Subscriptions.Msmq\MsmqSubscriptionStorage.cs:line 184 --- 内部异常堆栈跟踪结束 --- 在 NServiceBus.Unicast.Subscriptions.Msmq.MsmqSubscriptionStorage.set_Queue(字符串 值)在 d:\BuildAgent-02\work\672d81652eaca4e1\src\impl\unicast\NServiceBus.Unicast.Subscriptions.Msmq\MsmqSubscriptionStorage.cs:line 188 在(对象,对象,对象[]) 在 Spring.Reflection.Dynamic.SafeProperty.SetValue(对象 目标,对象值)在 l:\projects\spring-net\trunk\src\Spring\Spring.Core\Reflection\Dynamic\DynamicProperty.cs:line 204 在 Spring.Expressions.PropertyOrFieldNode.PropertyValueAccessor.Set(对象 上下文,对象值)在 l:\projects\spring-net\trunk\src\Spring\Spring.Core\Expressions\PropertyOrFieldNode.cs:line 585 在 Spring.Expressions.PropertyOrFieldNode.SetPropertyOrFieldValueInternal(对象 上下文,对象新值)在 l:\projects\spring-net\trunk\src\Spring\Spring.Core\Expressions\PropertyOrFieldNode.cs:line 406 在 Spring.Expressions.PropertyOrFieldNode.SetPropertyOrFieldValue(对象 上下文,评估上下文 evalContext, 对象 newValue) 在 l:\projects\spring-net\trunk\src\Spring\Spring.Core\Expressions\PropertyOrFieldNode.cs:line 348]
这是我的配置部分。
<configuration>
<configSections>
<section name="MsmqTransportConfig" type="NServiceBus.Config.MsmqTransportConfig,NServiceBus.Core"/>
<section name="UnicastBusConfig" type="NServiceBus.Config.UnicastBusConfig,NServiceBus.Core"/>
<section name="MsmqSubscriptionStorageConfig"
type="NServiceBus.Config.MsmqSubscriptionStorageConfig,NServiceBus.Core" />
</configSections>
<MsmqTransportConfig InputQueue="MyResponseQueue" ErrorQueue="error" NumberOfWorkerThreads="1" MaxRetries="5"/>
<UnicastBusConfig>
<MessageEndpointMappings>
<add Messages="MyMessages.Message1" Endpoint="PubQueue"/>
</MessageEndpointMappings>
</UnicastBusConfig>
</configuration>
这就是我尝试创建总线的方式
NServiceBus.Configure.With()
.DefaultBuilder()
.Log4Net()
.MsmqSubscriptionStorage()
.XmlSerializer()
.MsmqTransport()
.IsTransactional(true)
.UnicastBus()
.CreateBus();
谁能解释我出了什么问题? 任何帮助将不胜感激。
谢谢 亚历克斯。
【问题讨论】:
标签: msmq nservicebus