C# 使用JustSaying SNS和SQS在AWS中所有连接,但未调用处理程序
按如下方式使用和配置发布服务器:C# 使用JustSaying SNS和SQS在AWS中所有连接,但未调用处理程序,c#,amazon-web-services,amazon-sqs,amazon-sns,C#,Amazon Web Services,Amazon Sqs,Amazon Sns,按如下方式使用和配置发布服务器: \u publisher=CreateMeABus .in区域(“eu-west-2”)。具有命名策略(()=>新命名() .WissNSMessagePublisher() 我覆盖了命名策略,因为使用泛型时会创建一个非常详细的名称 public class Naming<T> : INamingStrategy { public string GetTopicName(string topicName, string messageTyp
\u publisher=CreateMeABus
.in区域(“eu-west-2”)。具有命名策略(()=>新命名()
.WissNSMessagePublisher()代码>
我覆盖了命名策略,因为使用泛型时会创建一个非常详细的名称
public class Naming<T> : INamingStrategy
{
public string GetTopicName(string topicName, string messageType)
{
return "topic_" + typeof(T).Name.ToLower();
}
public string GetQueueName(SqsReadConfiguration sqsConfig, string messageType)
{
return "queue_" + typeof(T).Name.ToLower();
}
}
公共类命名:INamingStrategy
{
公共字符串GetTopicName(字符串主题名,字符串消息类型)
{
返回“topic_”+typeof(T).Name.ToLower();
}
公共字符串GetQueueName(SqsReadConfiguration sqsConfig,string messageType)
{
返回“queue_”+typeof(T).Name.ToLower();
}
}
我正在这样配置订阅端:
var queuename = "queue" + typeof(T).Name.ToLower();
var bus = CreateMeABus.InRegion("eu-west-2")
.WithNamingStrategy(() => new NamingStrategy<T>())
.WithSqsTopicSubscriber().IntoQueue(queuename)
.WithMessageHandler<MessageHolder<T>>(new HandleMessage<T>(_handler));
bus.StartListening();
var queuename=“queue”+typeof(T).Name.ToLower();
var bus=CreateMeABus.in区域(“eu-west-2”)
.使用NamingStrategy(()=>新NamingStrategy())
.WithQStopicSubscriber().IntoQueue(queuename)
.WithMessageHandler(新HandleMessage(_handler));
总线,总线监听();
在AWS中,SNS主题与SQS队列以及所有订阅等一起创建。发布时,我可以看到消息流入队列,并且正在从队列中读取消息,但从未调用HandleMessage.Handle(MessageHolder消息)
我可以看到消息是从队列中获取的,有时它们在飞行中,因此在JustSaying世界中有一些东西将它们从队列中带出,但它永远不会到达处理程序
任何一个在这个框架中失败的人都知道为什么在调用处理程序之前我遗漏了什么或者序列化失败了吗
g/