public async Task <IActionResult> Create([Bind("IdEquipo,NombreEquipo")] Equipo equipo) { if (ModelState.IsValid) { _context.Add(equipo); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(equipo)); }
public async Task <IActionResult> Create([Bind("IdJugador,NombreJugador,Edad,IdEquipo")] Jugador jugador) { if (ModelState.IsValid) { _context.Add(jugador); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["IdEquipo"] = new SelectList(_context.Equipos, "IdEquipo", "IdEquipo", jugador.IdEquipo); return(View(jugador)); }
public async Task <IActionResult> Post([FromBody] JObject body) { dynamic jsonObj = body; string pushEndpoint = (string)jsonObj.endpoint; if (string.IsNullOrWhiteSpace(pushEndpoint)) { return(BadRequest()); } var subscription = await _dbContext.PushSubscriptions.FromSql( @"SELECT * FROM ""PushSubscriptions"" WHERE (""Data""->>'endpoint')::TEXT = {0}", pushEndpoint ) .SingleOrDefaultAsync() .ConfigureAwait(false); if (subscription != null) { _dbContext.PushSubscriptions.Remove(subscription); await _dbContext.SaveChangesAsync() .ConfigureAwait(false); } return(Ok()); }
private async Task RemoveSubscription(Data.PushSubscription subscription, CancellationToken cancellationToken = default) { var sub = await _dbContext.PushSubscriptions .SingleAsync(s => s.Id == subscription.Id, cancellationToken) .ConfigureAwait(false); _dbContext.Remove(sub); await _dbContext.SaveChangesAsync(cancellationToken) .ConfigureAwait(false); }
public async Task <IActionResult> Post([FromBody] JObject body) { dynamic jsonObj = body; string pushEndpoint = (string)jsonObj.endpoint; string p256dh = (string)jsonObj.keys?.p256dh; string auth = (string)jsonObj.keys?.auth; string payload = JsonConvert.SerializeObject(new PushNotification { Title = "Nice! You are subscribed to push notifications.", Options = new PushNotificationOptions { Icon = "favicon.ico", } }); string json = body.ToString(); await _dbContext.PushSubscriptions.AddAsync(new Data.PushSubscription { Data = json, }); await _dbContext.SaveChangesAsync(); var webPushClient = new WebPushClient(); try { var subscription = new PushSubscription(pushEndpoint, p256dh, auth); await webPushClient.SendNotificationAsync(subscription, payload, _vapidDetails); } catch (WebPushException exception) { Console.WriteLine("Http STATUS code" + exception.StatusCode); } return(Ok()); }