private async Task AddQueueMessages(RequestContext req) { var msg = new FetchTriathletesMessage() { RaceId = req.RaceId, AgegroupIds = new int[] { req.AgeGroupId }, GenderIds = new int[] { req.GenderId } }; var queueMessage = new CloudQueueMessage(JsonConvert.SerializeObject(msg)); await _CacheRequestQueue.AddMessageAsync(queueMessage); }
// This function will get triggered/executed when a new message is written // on an Azure Queue called queue. public static void ProcessQueueMessage( [QueueTrigger("triathletepullrequest")] FetchTriathletesMessage msg, TextWriter log) { log.WriteLine("Processing triathlete pull request"); log.WriteLine( " Race: " + msg.RaceId + " Age Groups: " + msg.AgegroupIds.ToString() + " Genders: " + msg.GenderIds.ToString() ); var count = GetTriathletes(msg.RaceId, msg.AgegroupIds, msg.GenderIds); log.Write("Count: " + count); }
private async Task AddQueueMessages(string raceId) { var raceIds = new string[] { raceId }; //for futer growth? var agegroupIds = _DBContext.AgeGroups.Select(ag => ag.AgeGroupId).ToArray(); var genderIds = _DBContext.Genders.Select(g => g.GenderId).ToArray(); foreach (string id in raceIds) { foreach (int ageId in agegroupIds) { foreach (int genderId in genderIds) //create a queue message for each AgeGroup, gender { var msg = new FetchTriathletesMessage() { RaceId = id, AgegroupIds = new int[] { ageId }, GenderIds = new int[] { genderId } }; var queueMessage = new CloudQueueMessage(JsonConvert.SerializeObject(msg)); await _CacheRequestQueue.AddMessageAsync(queueMessage); } } } }