public async Task <bool> sincronizarOpcoes() { //var ativos = new List<string> { "PETR4" }; var ativos = _context.opcao.Select(c => c.acao.Codigo + c.acao.Numero).Distinct().ToList(); foreach (var ativo in ativos) { var listaOpcoes = await _informoneyService.pegarOpcoes(ativo); foreach (var opcao in listaOpcoes.Options) { var op = _context.opcao.Where(c => (c.acao.Codigo + c.serie.Descricao + c.Descricao) == opcao.Symbol).FirstOrDefault(); if (op != null) { op.ValorVenda = (Decimal)opcao.Price == 0 ? 0 : Convert.ToDecimal(opcao.Price); _context.Entry(op).State = EntityState.Modified; await _context.SaveChangesAsync(); } } /*var update = _context.opcao.Where (c => (c.acao.Codigo + c.acao.Numero + c.serie.Descricao + c.Descricao) == ativo).FirstOrDefault (); * if (update != null) { * update.ValorCompra = valorAcao.Options.Where (c => c.Symbol == ativo).FirstOrDefault ().Price; * _context.Entry (update).State = EntityState.Modified; * await _context.SaveChangesAsync (); * }*/ } return(true); }
public async Task <bool> sincronizarOpcoes() { //var ativos = new List<string> { "PETR4","" }; var ativos = _context.opcao.Select(c => c.acao.Codigo + c.acao.Numero + c.serie.Descricao + c.Descricao).ToList(); foreach (var ativo in ativos) { var valorAcao = await _informoneyService.pegarOpcoes(ativo); var update = _context.opcao.Where(c => (c.acao.Codigo + c.acao.Numero + c.serie.Descricao + c.Descricao) == ativo).FirstOrDefault(); if (update != null) { update.ValorCompra = valorAcao.Options.Where(c => c.Symbol == ativo).FirstOrDefault().Price; _context.Entry(update).State = EntityState.Modified; await _context.SaveChangesAsync(); } } return(true); }