public void CommitToDatabase(List <FbaInventoryQuantity> fbaQuantities) { using (var db = new CheapeesEntities()) { db.Configuration.AutoDetectChangesEnabled = false; db.Configuration.ValidateOnSaveEnabled = false; // Clear table first db.AmazonFulfilledInventories.RemoveRange(db.AmazonFulfilledInventories); db.SaveChanges(); for (int i = 0; i < fbaQuantities.Count; i++) { var qty = fbaQuantities[i]; AmazonFulfilledInventory dbInv = new AmazonFulfilledInventory(); dbInv.Asin = qty.Asin; dbInv.FbaSku = qty.Sku; dbInv.Fnsku = qty.Fnsku; dbInv.FulfillableQuantity = qty.FulfillableQuantity; dbInv.InboundReceivingQuantity = qty.InboundReceivingQuantity; dbInv.InboundShippedQuantity = qty.InboundShippedQuantity; dbInv.InboundWorkingQuantity = qty.InboundWorkingQuantity; dbInv.TotalQuantity = qty.TotalQuantity; db.AmazonFulfilledInventories.Add(dbInv); if (i % 1000 == 0) { this.StatusDescription = string.Format("Committing to database - {0:0.00}% ({1}/{2})", i * 100.0 / fbaQuantities.Count, i, fbaQuantities.Count); this.StatusPercentage = i * 100 / fbaQuantities.Count; db.SaveChanges(); } } db.SaveChanges(); } }
public void CommitToDatabase(List<FbaInventoryQuantity> fbaQuantities) { using (var db = new CheapeesEntities()) { db.Configuration.AutoDetectChangesEnabled = false; db.Configuration.ValidateOnSaveEnabled = false; // Clear table first db.AmazonFulfilledInventories.RemoveRange(db.AmazonFulfilledInventories); db.SaveChanges(); for (int i = 0; i < fbaQuantities.Count; i++) { var qty = fbaQuantities[i]; AmazonFulfilledInventory dbInv = new AmazonFulfilledInventory(); dbInv.Asin = qty.Asin; dbInv.FbaSku = qty.Sku; dbInv.Fnsku = qty.Fnsku; dbInv.FulfillableQuantity = qty.FulfillableQuantity; dbInv.InboundReceivingQuantity = qty.InboundReceivingQuantity; dbInv.InboundShippedQuantity = qty.InboundShippedQuantity; dbInv.InboundWorkingQuantity = qty.InboundWorkingQuantity; dbInv.TotalQuantity = qty.TotalQuantity; db.AmazonFulfilledInventories.Add(dbInv); if (i % 1000 == 0) { this.StatusDescription = string.Format("Committing to database - {0:0.00}% ({1}/{2})", i * 100.0 / fbaQuantities.Count, i, fbaQuantities.Count); this.StatusPercentage = i * 100 / fbaQuantities.Count; db.SaveChanges(); } } db.SaveChanges(); } }