您好
我有一个用户注册的网站,我们需要通过soap webservice调用将它们添加到旧系统。这些webservice调用是队列化的,以便异步重试...
我从NServiceBus下载中复制了AsyncPages示例。
然而,消息似乎在没有被处理的情况下进出队列(也没有放在错误队列中)。 (消息显示在期刊中)
我的网站配置如下:
<UnicastBusConfig>
<MessageEndpointMappings>
<add Messages="FooComMessages" Endpoint="FooComSignupService"/>
</MessageEndpointMappings>
</UnicastBusConfig>
我点击按钮时会看到这个测试代码:
Global.Bus.Send(new CreateMemberContractRequest[]
{new CreateMemberContractRequest()
{birthdate = DateTime.Parse("4 oct 1975")}
}
);
我的留言:
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();
}
}
}
编辑: 我正在使用NServiceBus.Host.exe来托管FooComSignupService
有谁知道我可能做错了什么? 我也无法在Handle方法中遇到任何断点。
干杯。
默里。