public ActionResult BackgroundAgent() { try { // Test Params if ((HttpContext.Request.QueryString["LastFetchDate"].Trim() == String.Empty) || (HttpContext.Request.QueryString["ProcessName"].Trim() == String.Empty)) { return base.Json(new RESTResponse() { ResponseStatus = ResponseStatus.IllegalRequest }, JsonRequestBehavior.AllowGet); } // Get Params String processName = HttpContext.Request.QueryString["ProcessName"].Trim(); DateTime dateEntered = DateTime.Parse(HttpContext.Request.QueryString["LastFetchDate"].Trim()); WebRoleMgr webRoleMgr = new WebRoleMgr(cloudStorageAccount, processName, dateEntered); // Add row webRoleMgr.AddObject(); // Call SharedLibrary which calls AzureStorage int countSinceLastFetchDate = webRoleMgr.CountOfItemsSince(dateEntered); ResponseDataItem lastItem = webRoleMgr.LastItemEntered(); ResponseDataItem[] SampleDataModelItems = new ResponseDataItem[1]; SampleDataModelItems[0] = lastItem; // Build repsonse RESTResponse response = new RESTResponse() { ResponseStatus = ResponseStatus.Success, Count = countSinceLastFetchDate, Items = SampleDataModelItems }; Debug.WriteLine("*****MvcWebRole1.Controllers.PhoneController.BackgroundAgent Count=" + response.Count.ToString()); // Convert and return object to JSON return base.Json(response, JsonRequestBehavior.AllowGet); } catch { // Convert and return Unknown Exception return base.Json(new RESTResponse() { ResponseStatus = ResponseStatus.UnknownException }, JsonRequestBehavior.AllowGet); } }