public void UpdateFulfillment(FulfillmentInfo fulfillmentInfo, KeyStoreContext context = null) { UsingContext(ref context, () => { FulfillmentInfo info = context.FulfillmentInfoes.Single(i => i.FulfillmentNumber == fulfillmentInfo.FulfillmentNumber); if (!ValidateStatusTransition(info.FulfillmentStatus, fulfillmentInfo.FulfillmentStatus)) throw new ApplicationException(string.Format("Cannot change fulfillment {0} status from {1} to {2}.", info.FulfillmentNumber, info.FulfillmentStatus.ToString(), fulfillmentInfo.FulfillmentStatus.ToString())); context.Entry(info).CurrentValues.SetValues(fulfillmentInfo); info.ModifiedDateUtc = DateTime.UtcNow; }); }
public void UpdateReturnKeyAck(ReturnReport returnKey, KeyStoreContext context) { UsingContext(ref context, () => { context.Configuration.AutoDetectChangesEnabled = false; UpdateReturnKeyAck(context, returnKey); foreach (ReturnReportKey key in returnKey.ReturnReportKeys) { context.ReturnReportKeys.Attach(key); context.Entry(key).State = EntityState.Modified; } }); }
public void UpdateCbrAck(Cbr cbr, bool IsDuplicateImport = false, KeyStoreContext context = null) { UsingContext(ref context, () => { context.Configuration.AutoDetectChangesEnabled = false; UpdateCbr(context, cbr); foreach (CbrKey key in cbr.CbrKeys) { context.CbrKeys.Attach(key); context.Entry(key).State = EntityState.Modified; } if (cbr.CbrKeys.Any(k => k.ReasonCode == Constants.CBRAckReasonCode.DuplicateProductKeyId) && !IsDuplicateImport) { context.CbrsDuplicated.Add(new CbrDuplicated() { CbrUniqueId = cbr.CbrUniqueId, IsExported = false }); } if (IsDuplicateImport) { var delCbr = context.CbrsDuplicated.FirstOrDefault(c => c.CbrUniqueId == cbr.CbrUniqueId); context.CbrsDuplicated.Remove(delCbr); } context.Configuration.AutoDetectChangesEnabled = true; }); }
private void UpdateCbr(KeyStoreContext context, Cbr cbr) { context.Cbrs.Attach(cbr); context.Entry(cbr).State = EntityState.Modified; }
private void DeleteUser(KeyStoreContext context, User userToDelete) { if (context.Entry(userToDelete).State == EntityState.Detached) context.Users.Attach(userToDelete); context.Users.Remove(userToDelete); }
private void UpdateReturnKeyAck(KeyStoreContext context, ReturnReport returnKey) { context.ReturnReports.Attach(returnKey); context.Entry(returnKey).State = EntityState.Modified; }
public void InsertOrUpdateKeySyncNotifiction(List<KeyInfo> keys, KeyStoreContext context) { UsingContext(ref context, () => { List<KeySyncNotification> dbSyncs = GetKeySyncNotifications(context, keys.Select(k => k.KeyId).ToArray()); context.Configuration.AutoDetectChangesEnabled = false; foreach (var keyInfo in keys) { KeySyncNotification dbSync = dbSyncs.SingleOrDefault(s => s.KeyId == keyInfo.KeyId); if (dbSync == null) { context.KeySyncNotifications.Add(new KeySyncNotification() { KeyId = keyInfo.KeyId, KeyState = keyInfo.KeyState, CreateDate = DateTime.UtcNow, }); } else { dbSync.KeyState = keyInfo.KeyState; dbSync.CreateDate = DateTime.UtcNow; context.Entry(dbSync).State = EntityState.Modified; } } context.Configuration.AutoDetectChangesEnabled = true; }); }