コード例 #1
0
        public LogEntry UpdateLog(LogEntry entry)
        {
            using (var fitnessLog = new Models.FitnessLog())
            {
                var log =
                    fitnessLog.Logs.Include("Entries")
                   .FirstOrDefault(l => l.Entries.Any(e => e.LogEntryID == entry.LogEntryID));
                if (log == null)
                    throw new HttpResponseException(System.Net.HttpStatusCode.NotFound);

                var logEntry =
                    log.Entries.FirstOrDefault(e => e.LogEntryID == entry.LogEntryID);
                if (logEntry == null)
                    throw new HttpResponseException(System.Net.HttpStatusCode.NotFound);

                logEntry.ExerciseName = entry.ExerciseName;
                logEntry.DateAndTime = entry.DateAndTime;
                logEntry.Lbs = entry.Lbs;
                logEntry.Reps = entry.Reps;
                logEntry.Set = entry.Set;
                logEntry.Log = log;

                fitnessLog.SaveChanges();

                return logEntry;
            }
        }
コード例 #2
0
        public Log AddLog(LogEntry entry)
        {
            using (var fitnessLog = new FitnessLog())
            {
                var log = fitnessLog.Logs.Find(entry.Log.LogID);

                if (log == null)
                    throw new HttpResponseException(System.Net.HttpStatusCode.NotFound);

                entry.Log = log;
                log.Entries.Add(entry);

                fitnessLog.SaveChanges();
                return log;
            }
        }
コード例 #3
0
        public void DeleteLog(LogEntry entry)
        {
            using (var fitnessLog = new FitnessLog())
            {
                var log =
                     fitnessLog.Logs.Include("Entries")
                    .FirstOrDefault(l => l.Entries.Any(e => e.LogEntryID == entry.LogEntryID));
                if (log == null)
                    throw new HttpResponseException(System.Net.HttpStatusCode.NotFound);

                var logEntry =
                    log.Entries.FirstOrDefault(e => e.LogEntryID == entry.LogEntryID);
                if (logEntry == null)
                    throw new HttpResponseException(System.Net.HttpStatusCode.NotFound);

                log.Entries.Remove(logEntry);

                fitnessLog.SaveChanges();
            }
        }
コード例 #4
0
 // PUT /api/fitnesslogapi
 public HttpResponseMessage<LogEntry> Put(LogEntry entry)
 {
     Repository.UpdateLog(entry);
     return new HttpResponseMessage<LogEntry>(entry, System.Net.HttpStatusCode.OK);
 }
コード例 #5
0
 public HttpResponseMessage Post(LogEntry entry)
 {
     Repository.AddLog(entry);
     return new HttpResponseMessage(System.Net.HttpStatusCode.OK);
 }
コード例 #6
0
 // DELETE /api/fitnesslogapi/5
 public HttpResponseMessage Delete(LogEntry entry)
 {
     Repository.DeleteLog(entry);
     return new HttpResponseMessage(System.Net.HttpStatusCode.OK);
 }