/// <summary>
        /// Reads the current status of the given ReplayHotsLogsUpload.  Call IsExistingRecord() to ensure record exists.
        /// </summary>
        /// <param name="replayHotsLogsUpload"></param>
        /// <returns></returns>
        public int?ReadUploadStatus(ReplayHotsLogsUpload replayHotsLogsUpload)
        {
            using (var db = new ReplaysContext())
            {
                // check to see if a duplicate record got inserted
                if (db.ReplayHotsLogsUploads.AsNoTracking().Count(x => x.ReplayId == replayHotsLogsUpload.ReplayId) > 1)
                {
                    var record = db.ReplayHotsLogsUploads.AsNoTracking().First(x => x.ReplayId == replayHotsLogsUpload.ReplayId);
                    db.Entry(record).State = EntityState.Deleted; // delete the duplicate record

                    db.SaveChanges();
                }

                return(db.ReplayHotsLogsUploads.AsNoTracking().SingleOrDefault(x => x.ReplayId == replayHotsLogsUpload.ReplayId).Status);
            }
        }