public void SendMessage(ContosoMessage message) { BrokeredMessage bm = new BrokeredMessage(); bm.Properties["timestamp"] = message.MessageTimestamp; bm.Properties["message"] = message.MessageString; bm.MessageId = message.MessageID; queueClient.Send(bm); }
// GET: ExpensiveTask public ActionResult PerformExpensiveTask() { var end = DateTime.Now + TimeSpan.FromSeconds(3); while (DateTime.Now < end) { //do nothing } List <ContosoMessage> messages = new List <ContosoMessage>(); for (int i = 0; i < 10; i++) { ContosoMessage message = new ContosoMessage(); message.MessageID = (new Random()).Next().ToString(); message.MessageString = (new Random()).Next().ToString() + (new Random()).Next().ToString(); message.MessageTimestamp = "" + (DateTime.Now.Ticks / (decimal)TimeSpan.TicksPerMillisecond); messages.Add(message); } return(View(messages)); }
public List <ContosoMessage> ReceiveMessages() { List <ContosoMessage> messageList = new List <ContosoMessage>(); int i = 0; BrokeredMessage m = null; do { i++; try { m = queueClient.Receive(TimeSpan.FromSeconds(2)); ContosoMessage cm = new ContosoMessage(); cm.MessageID = m.MessageId; Stream stream = m.GetBody <Stream>(); StreamReader reader = new StreamReader(stream); string body = reader.ReadToEnd(); var bodyDict = Newtonsoft.Json.JsonConvert.DeserializeObject <Dictionary <String, String> >(body); cm.MessageID = bodyDict["messageId"]; cm.MessageTimestamp = bodyDict["timestamp"]; cm.MessageString = bodyDict["message"]; messageList.Add(cm); m.Complete(); } catch (Exception e) { m = null; } } while (i < 7 && m != null); /* * IEnumerable<BrokeredMessage> messages = queueClient.ReceiveBatch(10); * foreach(BrokeredMessage m in messages) * { * } * /* */ return(messageList); }