public static bool UpdateEntry(DbDirectoryEntry userToUpdate)
 {
     var existingId = userToUpdate.Pkid;
       DbDirectoryEntry existingUser = GetEntryById(existingId);
       if (existingUser == null) return false;
       Directory.Remove(existingUser); //NOTE: this is only until we build a read DB!!! DO NOT DO THIS IN PROD
       Directory.Add(userToUpdate);
       return true;
 }
        public static bool AddNewEntry(DbDirectoryEntry newEntryToAdd, out AddDirectoryEntryFailReason result)
        {
            DbDirectoryEntry possiblyExistingEntry = GetEntryByName(newEntryToAdd.Name);
              if (possiblyExistingEntry != null)
              {
            result = AddDirectoryEntryFailReason.allreadyExistsDuplicateName;
            return false;
              }

              possiblyExistingEntry = GetUserByTelephone(newEntryToAdd.TelephoneNumber);
              if (possiblyExistingEntry != null)
              {
            result = AddDirectoryEntryFailReason.allreadyExistsDuplicatePhoneNumber;
            return false;
              }

              var newid = Directory.Max(x => x.Pkid);
              newEntryToAdd.Pkid = newid;
              Directory.Add(newEntryToAdd);

              result = AddDirectoryEntryFailReason.noErrorEntryAdded;
              return true;
        }