public string InitializeTimelinesExitPoll() { var db = new edayRoomEntities(); db.ClearExitPoll(); var centros = db.Centroes.Include("Movilizadors").Include("TestigoExitPolls").Where(c => c.exitPollActive ?? false).ToList(); var tlExitPoll = new List<ExitPollTimeline>(); var exitPollList = new List<ExitPoll>(); foreach (var c in centros) { if (c.exitPollActive ?? false) { tlExitPoll.Add(new ExitPollTimeline { activa = true, id_centro = c.id, fecha = DateTime.Now, id_testigoExitPoll = c.TestigoExitPolls.First(t => t.activo).id, id_parent = null }); } } using ( var con = new SqlConnection(ConfigurationManager.ConnectionStrings["dbConnSimple"].ConnectionString) ) { con.Open(); #region ExitPoll Timeline using (var tran = con.BeginTransaction()) { var bc = new SqlBulkCopy(con, SqlBulkCopyOptions.CheckConstraints | SqlBulkCopyOptions.FireTriggers | SqlBulkCopyOptions.KeepNulls, tran) { BatchSize = 1000, DestinationTableName = "exitpollTimeline" }; bc.WriteToServer(tlExitPoll.AsDataReader()); tran.Commit(); } #endregion con.Close(); } return "todo inicializado, bien"; }