public async void Update_Data(object sender, EventArgs ea) { // Buscar informação existente var encomendas = context.Encomendas.Local; var apiEncomendas = await api.GetEncomendasFromArray(encomendas.Select((e) => e.id)); for (int i = 0; i < encomendas.Count; ++i) { // Atualizamos se a data the modicação é posterior if (apiEncomendas[i].DataMod > encomendas[i].DataMod) { encomendas[i].Estado = apiEncomendas[i].Estado; encomendas[i].Endereco = apiEncomendas[i].Endereco; encomendas[i].DataMod = apiEncomendas[i].DataMod; context.SaveChanges(); // Estas alterações não notificam a lista por isso atualizamos gridEncomendas.Items.Refresh(); } } // Obter novas encomendas var recentEncomendas = await api.GetEncomendasFrom(encomendas.Count()); context.Encomendas.AddRange(recentEncomendas); context.SaveChanges(); }
public async void Update_Data(object sender, EventArgs ea) { // Obter novos produtos var produtos = await api.GetProdutosFrom(context.Produtos.Local.Count()); context.Produtos.AddRange(produtos); context.SaveChanges(); }