// POST api/Announcement public async Task<HttpResponseMessage> Post(string password, [FromBody]string message) { HttpStatusCode ret = HttpStatusCode.InternalServerError; if (string.IsNullOrWhiteSpace(message) || password != ConfigurationManager.AppSettings["NotificationsPassword"]) return Request.CreateResponse(ret); try { var accounenement = new Notification { Date = DateTime.UtcNow, Text = message }; var context = new XamarinEvolveContext(); context.Notifications.Add(accounenement); await context.SaveChangesAsync(); } catch { return Request.CreateResponse(ret); } return Request.CreateResponse(HttpStatusCode.OK); }
async Task ExecuteLoadNotificationsCommandAsync() { if (LoadingNotifications) return; LoadingNotifications = true; #if DEBUG await Task.Delay(1000); #endif try { Notification = await StoreManager.NotificationStore.GetLatestNotification(); } catch(Exception ex) { ex.Data["method"] = "ExecuteLoadNotificationsCommandAsync"; Logger.Report(ex); Notification = new Notification { Date = DateTime.UtcNow, Text = "Welcome to Xamarin Evolve!" }; } finally { LoadingNotifications = false; } }