NServiceBus:通过代码进行配置时,消息处理程序类型无法正确加载

时间:2010-11-30 21:52:41

标签: nservicebus

在PubSub示例中更改Subscriber2项目后,当此订阅者收到消息时,我收到此错误:

  

ERROR   NServiceBus.Unicast.Transport.Msmq.MsmqTransport   [(null)]<(null)> - 无法提取   消息数据。   System.TypeLoadException:无法   句柄类型'MyMessages.EventMessage'。

我将EndpointConfig.cs文件更改为:

using NServiceBus;

namespace Subscriber2
{
    public class EndpointConfig : IConfigureThisEndpoint, AsA_Server, IWantCustomInitialization
    {
        public void Init()
        {
            Configure.With(new[] { typeof(EventMessageHandler), typeof(NServiceBus.Unicast.Transport.CompletionMessage) })
                .DefaultBuilder()
                .XmlSerializer()
                .UnicastBus()
                .DoNotAutoSubscribe();
        }
    }
}

有谁知道为什么这不起作用?

1 个答案:

答案 0 :(得分:2)

您未在列表中指定消息类型。如果使用With()的这个重载,则必须提供所有类型。我建议指向一个特定的程序集,然后让NSB扫描它以获得正确的类型。或者,你什么都不做,让它扫描bin目录。