private static ConnectProdDbEntities AddToContextWOLineKittable(ConnectProdDbEntities context, WOLineKittableResultSet entity, int count, int commitCount, bool recreateContext) { context.Set <WOLineKittableResultSet>().Add(entity); if (count % commitCount == 0) { context.SaveChanges(); if (recreateContext) { context.Dispose(); context = new ConnectProdDbEntities(); context.Configuration.AutoDetectChangesEnabled = false; } } return(context); }
public static void CopyWOLineKittableToDB(List <WOLineKittableResultSet> dataSet, long UID, DateTime DateRun) { ConnectProdDbEntities connect = null; try { connect = new ConnectProdDbEntities(); connect.Configuration.AutoDetectChangesEnabled = false; string regexPattern = @"\{\*?\\[^{}]+}|[{}]|\\\n?[A-Za-z]+\n?(?:-?\d+)?[ ]?"; Regex rgx = new Regex(regexPattern); int count = 0; foreach (var line in dataSet) { ++count; var record = new WOLineKittableResultSet(); record.UID = UID; record.WONumber = line.WONumber; record.PartNumber = line.PartNumber; record.RespCode = line.RespCode; record.PlannedIssueQty = line.PlannedIssueQty; record.ActualIssueQty = line.ActualIssueQty; record.ActualKitNeed = line.ActualKitNeed; record.PlannedIssueDate = line.PlannedIssueDate; record.Kittable = line.Kittable; record.PNF = line.PNF; record.OverKitted = line.OverKitted; record.BatchNotes = line.BatchNotes != null?rgx.Replace(line.BatchNotes, "").Replace("\r", "").Replace("\n", "").ToLower() : ""; record.CommercialNotes = line.CommercialNotes != null?rgx.Replace(line.CommercialNotes, "").Replace("\r", "").Replace("\n", "").ToLower() : ""; record.DateRun = DateRun.Date; connect = AddToContextWOLineKittable(connect, record, count, 500, true); } connect.SaveChanges(); } finally { if (connect != null) { connect.Dispose(); } } }
public static void CopyWOKittableToDB(List <WOKittingGroupedExport> dataSet, long UID, DateTime DateRun) { ConnectProdDbEntities connect = null; try { connect = new ConnectProdDbEntities(); connect.Configuration.AutoDetectChangesEnabled = false; int count = 0; foreach (var line in dataSet) { ++count; var record = new WOKittableResultSet(); record.WONumber = line.WONumber; record.DateRun = DateRun.Date; record.BatchNotes = line.BatchNotes; record.CommercialNotes = line.CommercialNotes; record.OverKitted = line.OverKitted; record.PartsNotFound = line.PartsNotFound; record.ResponsibilityCode = line.ResponsibilityCode; record.TotalActualKitNeed = line.totalActualKitNeed; record.TotalActualQty = line.TotalActualQty; record.TotalKittable = line.TotalKittable; record.TotalPlannedQty = line.TotalPlannedQty; record.WOTotalPlannedQty = line.WOTotalPlannedQty; record.UID = UID; connect = AddToContextWOKittable(connect, record, count, 500, true); } connect.SaveChanges(); } finally { if (connect != null) { connect.Dispose(); } } }