【发布时间】:2015-08-17 19:36:23
【问题描述】:
我正在使用 ServiceBusTrigger 属性 (https://www.nuget.org/packages/Microsoft.Azure.WebJobs.ServiceBus/)
我使用以下代码创建了一条消息,它有效,我在队列中看到它:
var client = QueueClient.CreateFromConnectionString(QueueConnectionString, queueName);
var dto = (AdListingServiceBusDto) obj;
client.Send(new BrokeredMessage(dto));
现在在我的摄入程序中,我有以下代码设置来检索消息(网络作业):
static void Main()
{
var _servicesBusConn = ConfigurationManager.ConnectionStrings["AzureWebJobsServiceBus"].ConnectionString;
JobHostConfiguration config = new JobHostConfiguration
{
ServiceBusConnectionString = _servicesBusConn
};
JobHost host = new JobHost(config);
host.RunAndBlock();
}
public static void ProcessQueueMessage([ServiceBusTrigger("wordpress-post")] BrokeredMessage dto, TextWriter logger)
{
logger.WriteLine(dto);
}
我使用了 Service Bus Explorer,在“wordpress-post”队列中看到一条消息,我看到消息文本为“40 12 43 75 73 74 6F 6D 65 72 4F 72 64 65 72 45 76 65 6E 74 08 1A 68 74 74 70".. 等等,所以我知道消息在那里,但函数永远不会被触发(我有一个断点)
知道我做错了什么吗?
【问题讨论】:
-
将 ProcessQueueMessage 方法中的第一个参数从 BrokeredMessage 更改为 String 是否有效?我知道您将它添加为 BrokeredMessage,它看起来对我来说是正确的。我很好奇将其更改为字符串是否有效。
-
你找到解决办法了吗?
标签: azure azureservicebus azure-webjobs