private void ImportarObra(DoWorkEventArgs e) { var lecturaMdb = new Clases.LeerMdb(rutaArchivo); var obras = lecturaMdb.ListarObras(); var i = 1; Exception ex = null; using (var proxy = new ProxyWeb.ServicioPlanillaClient(GlobalVars.PuertoWcf)) { foreach (var obra in obras) { if (BgwImportar.CancellationPending) { e.Cancel = true; break; } var obraImportado = proxy.ImportarObras(obra); if (!obraImportado.EstadoEntidad.Correcto) { e.Cancel = true; ex = obraImportado.EstadoEntidad.ErrorEjecutar; } var a = (i * 100) / obras.Count; BgwImportar.ReportProgress(a, ex); i++; } } }