我正在尝试使用 Azure SubscriptionClient.PeekBatch(int count) 来查看消息。对于 0 - 9 的计数值,一切正常,但一旦我输入 > 9 的值,我只会收到 9 条消息,大约有 9 条消息。 30 订阅中。这是一个错误还是我做错了什么?下面的代码示例;
private void PeekQueue(){
SubscriptionClient subscriptionClient = SubscriptionClient.CreateFromConnectionString(ConfigurationManager.AppSettings["Microsoft.ServiceBus.ConnectionString.Test.Peek"], "InHvccc", "lmo");
IEnumerable<BrokeredMessage> messages;
lstMessages.Items.Clear();
messages = subscriptionClient.PeekBatch(int.Parse(txtPeekCount.Text));
foreach(BrokeredMessage bm in messages) {
lstMessages.Items.Add(bm.GetBody<LmoMessage>());
}
subscriptionClient.Close();
}
干杯 炖菜
最佳答案
基于this answer (主题不同,但是关于客户端和缓存的很好的解释),我会尝试使用缓存:
- 使用 PeekBacth(0, 30)
- 重新启动您的应用并重试
- 重新启动您的云服务并重试
- 检查当您尝试携带比上次更少的元素时会发生什么(例如,要求 3、10 件,然后是 5 件)
关于.net - Azure SubscriptionClient.PeekBatch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22497140/