private static void Main() { using (IMessageQueueFactory messageQueueFactory = new AliyunMessageQueueFactory(new AliyunMessageQueueFactoryOptions { AccessKey = "xxxxxxxx", SecretKey = "xxxxxxxxxx" })) { using (var producer = messageQueueFactory.CreateProducer("ChunSun").Result) { producer.Start().Wait(); while (true) { Console.WriteLine("请输入消息,输入exit退出..."); var content = Console.ReadLine(); if (string.Equals(content, "exit", StringComparison.OrdinalIgnoreCase)) { break; } var message = new AliyunMessage { Topic = "ChunSun", Body = content }; var messageId = producer.Send(message).Result; Console.WriteLine($"发送成功,MessageId:{messageId}"); } } } }
public override ons.Action consume(ref Message message) { var aliyunMessage = new AliyunMessage(message); lock (_consumer) { var action = _consumer.Funcs.Select(i => i(aliyunMessage)).ToArray().FirstOrDefault(i => i.HasValue); switch (action) { case null: case SubscribeAction.CommitMessage: return(ons.Action.CommitMessage); case SubscribeAction.ReconsumeLater: return(ons.Action.ReconsumeLater); default: throw new NotSupportedException($"不支持的动作类型:{action}。"); } } }
public override ons.Action consume(ref Message message) { var aliyunMessage = new AliyunMessage(message); lock (_consumer) { var action = _consumer.Funcs.Select(i => i(aliyunMessage)).ToArray().FirstOrDefault(i => i.HasValue); switch (action) { case null: case SubscribeAction.CommitMessage: return ons.Action.CommitMessage; case SubscribeAction.ReconsumeLater: return ons.Action.ReconsumeLater; default: throw new NotSupportedException($"不支持的动作类型:{action}。"); } } }