/// <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); } }