示例#1
0
        private static ReportConnectDbEntities AddToContextWOAudit(ReportConnectDbEntities context, WOAuditEntry entity, int count, int commitCount, bool recreateContext)
        {
            context.Set <WOAuditEntry>().Add(entity);

            if (count % commitCount == 0)
            {
                context.SaveChanges();
                if (recreateContext)
                {
                    context.Dispose();
                    context = new ReportConnectDbEntities();
                    context.Configuration.AutoDetectChangesEnabled = false;
                }
            }
            return(context);
        }
示例#2
0
        public static void CopyWOAuditEntriesToDB(List <WOAuditEntry> dataSet)
        {
            ReportConnectDbEntities connect = null;

            try
            {
                connect = new ReportConnectDbEntities();
                connect.Configuration.AutoDetectChangesEnabled = false;

                int count = 0;
                foreach (var line in dataSet)
                {
                    ++count;
                    var record = new WOAuditEntry();
                    record.WOPart           = line.WOPart;
                    record.WOLevel          = line.WOLevel;
                    record.ModifiedOn       = line.ModifiedOn;
                    record.WorksOrderNumber = line.WorksOrderNumber;
                    record.FieldName        = line.FieldName;
                    record.ChangedFrom      = line.ChangedFrom;
                    record.ChangedTo        = line.ChangedTo;
                    record.WOTID            = line.WOTID;
                    record.Type             = line.Type;


                    connect = AddToContextWOAudit(connect, record, count, 500, true);
                }
                connect.SaveChanges();
            }
            finally
            {
                if (connect != null)
                {
                    connect.Dispose();
                }
            }
        }