public JsonResult postBack() { string json = new StreamReader(Request.InputStream).ReadToEnd(); json = json.Replace("ses:", "ses_"); AWSNotification AWSNotification = JsonConvert.DeserializeObject <AWSNotification>(json, new IsoDateTimeConverter()); foreach (var stringDestino in AWSNotification.Message.mail.destination) { var ONotificacaoPostback = new NotificacaoPostback(); ONotificacaoPostback.idExternoNotificacao = AWSNotification.Message.mail.messageId; ONotificacaoPostback.acao = AWSNotification.Message.eventType; ONotificacaoPostback.contaOrigem = AWSNotification.Message.mail.commonHeaders.from.FirstOrDefault(); ONotificacaoPostback.dtAcao = AWSNotification.Message.mail.timestamp; ONotificacaoPostback.ipAcao = AWSNotification.Message.mail.tags.sessourceip.FirstOrDefault(); ONotificacaoPostback.meioInteracao = AWSNotification.Message.open?.userAgent; ONotificacaoPostback.contaDestino = stringDestino; ONotificacaoPostbackCadastroBL.salvar(ONotificacaoPostback); } return(Json(new {})); }
// private bool atualizar(NotificacaoPostback ONotificacaoPostback) { //Localizar existentes no banco var dbNotificacaoPostback = db.NotificacaoPostback.condicoesSeguranca().FirstOrDefault(x => x.id == ONotificacaoPostback.id); if (dbNotificacaoPostback == null) { return(false); } //Atualizacao da Empresa var NotificacaoPostbackEntry = db.Entry(dbNotificacaoPostback); ONotificacaoPostback.setDefaultUpdateValues( ); NotificacaoPostbackEntry.CurrentValues.SetValues(ONotificacaoPostback); NotificacaoPostbackEntry.State = EntityState.Modified; NotificacaoPostbackEntry.ignoreFields(); db.SaveChanges(); return(ONotificacaoPostback.id > 0); }
// public bool salvar(NotificacaoPostback ONotificacaoPostback) { if (ONotificacaoPostback.id > 0) { return(this.atualizar(ONotificacaoPostback)); } return(this.inserir(ONotificacaoPostback)); }
// private bool inserir(NotificacaoPostback ONotificacaoPostback) { ONotificacaoPostback.setDefaultInsertValues(); db.NotificacaoPostback.Add(ONotificacaoPostback); db.SaveChanges(); return(ONotificacaoPostback.id > 0); }