static void Main(string[] args) { Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine(" Procesando actividades "); int countactivities = 0; Program.Logger(string.Format("************************************************************"), TypeLog.DEFAULT); Program.Logger(string.Format(" Inicia proceso {0} ", DateTime.Now), TypeLog.DEFAULT); Stopwatch stopwatch = new Stopwatch(); stopwatch.Start(); List <Activity> list = ctrlActivity.GetFromCSV(CurrentFilePath); RootActivity activities = new RootActivity(); activities.activities = new List <Activity>(); activities.activities = list; activities.updateParameters = new UpdateParameters(); activities.updateParameters.identifyActivityBy = "apptNumber"; activities.updateParameters.ifInFinalStatusThen = "createNew"; int maxcountrequest = 500; double numberrequest = Math.Floor((double)activities.activities.Count / maxcountrequest); numberrequest = numberrequest == 0 ? 1 : numberrequest; List <Activity> full = activities.activities.ToList <Activity>(); for (int i = 0; i < numberrequest; i++) { List <Activity> tmpactiviti = full.Skip(i * maxcountrequest).Take(maxcountrequest).ToList <Activity>(); countactivities += tmpactiviti.Count; // Activity RootActivity activities2 = new RootActivity(); activities2.activities = new List <Activity>(); activities2.activities = tmpactiviti; activities2.updateParameters = new UpdateParameters(); activities2.updateParameters.identifyActivityBy = "apptNumber"; activities2.updateParameters.ifInFinalStatusThen = "createNew"; ctrlActivity.CreateBulk(activities2, i); } stopwatch.Stop(); string sMessageEnd = string.Format(" Se procesaron {0} actividades en {1} segundos, el tiempo estimado por creación de actividad es de {2}", countactivities, stopwatch.Elapsed.TotalSeconds, (stopwatch.Elapsed.TotalSeconds / countactivities)); Console.WriteLine(sMessageEnd); Program.Logger(sMessageEnd, TypeLog.DEFAULT); Program.Logger(string.Format(" Fin de proceso {0} ", DateTime.Now), TypeLog.DEFAULT); Program.Logger(string.Format("************************************************************"), TypeLog.DEFAULT); Console.ReadLine(); }