NServiceBus简单重试机制,如何调试(基于AsyncPages示例)

NServiceBus简单重试机制,如何调试(基于AsyncPages示例),nservicebus,Nservicebus,你好 我有一个用户注册的网站,我们需要通过soap Web服务调用将他们添加到遗留系统中。这些webservice调用已排队等待异步重试。。。 我已经从NServiceBus下载中复制了AsyncPages示例 但是,消息似乎在未经处理的情况下进出队列(它们也不会放入错误队列)。(消息显示在日志中) 我的网站配置如下: <UnicastBusConfig> <MessageEndpointMappings> <add Messages="Fo

你好
我有一个用户注册的网站,我们需要通过soap Web服务调用将他们添加到遗留系统中。这些webservice调用已排队等待异步重试。。。 我已经从NServiceBus下载中复制了AsyncPages示例

但是,消息似乎在未经处理的情况下进出队列(它们也不会放入错误队列)。(消息显示在日志中)

我的网站配置如下:

<UnicastBusConfig>
    <MessageEndpointMappings>
        <add Messages="FooComMessages" Endpoint="FooComSignupService"/>
    </MessageEndpointMappings>
</UnicastBusConfig>
我的信息:

namespace FooComMessages
{
    [Serializable]
    public class CreateMemberContractRequest : IMessage
    {
        public DateTime birthdate { get; set; }
//.... snip....//
    }
}
我的处理程序配置:

  <MsmqTransportConfig InputQueue="FooComSignupService" ErrorQueue="FooComSignupServiceErrors" NumberOfWorkerThreads="1" MaxRetries="20" />
  <UnicastBusConfig>
    <MessageEndpointMappings>
      <add Messages="FooComMessages" Endpoint="FooComSignupService" />
    </MessageEndpointMappings>
  </UnicastBusConfig>

我的处理程序代码:

namespace FooComSignupService
{
    public class CreateMemberContractRequestHandler : IHandleMessages<CreateMemberContractRequest>
    {
        public IBus Bus { get; set; }
        private static readonly ILog Logger = LogManager.GetLogger(typeof(CreateMemberContractRequestHandler));
        public void Handle(CreateMemberContractRequest message)
        {
            Logger.Info("------------------------------------\nHandling CreateMemberContractRequest. id="+message.webdatabaseid);
            throw new NotImplementedException();
        }
    }
}
namespace FooComSignupService
{
公共类CreateMemberContractRequestHandler:IHandleMessages
{
公共IBus总线{get;set;}
私有静态只读ILog Logger=LogManager.GetLogger(typeof(CreateMemberContractRequestHandler));
公共无效句柄(CreateMemberContractRequest消息)
{
Logger.Info(“-------------------------------------\n处理CreateMemberContractRequest.id=“+message.webdatabaseid”);
抛出新的NotImplementedException();
}
}
}
编辑: 我正在使用NServiceBus.Host.exe托管FooComSignupService

有人知道我做错了什么吗? 我也不能在Handle方法中命中任何断点

干杯。

Murray。

我在这里也问过:如果你这样做会发生什么:Global.Bus.Send(new CreateMemberContractRequest(){birthdate=DateTime.Parse(“1975年10月4日”)?我看到一个或多个项目出现在这个队列中:Private Queues>FooComSignupService>Journal messages(其他任何地方都没有)您是如何托管和配置FooComSignupService的?您可以在此处发布代码吗?使用NServiceBus.Host.exe(已包含配置和代码)
namespace FooComSignupService
{
    public class CreateMemberContractRequestHandler : IHandleMessages<CreateMemberContractRequest>
    {
        public IBus Bus { get; set; }
        private static readonly ILog Logger = LogManager.GetLogger(typeof(CreateMemberContractRequestHandler));
        public void Handle(CreateMemberContractRequest message)
        {
            Logger.Info("------------------------------------\nHandling CreateMemberContractRequest. id="+message.webdatabaseid);
            throw new NotImplementedException();
        }
    }
}