コード例 #1
0
        public virtual async Task <T> AddAsync(T t)
        {
            _context.Set <T>().Add(t);
            await _context.SaveChangesAsync();

            return(t);
        }
コード例 #2
0
        public async Task <IActionResult> PutWorkout(int id, Workout workout)
        {
            if (id != workout.WorkoutId)
            {
                return(BadRequest());
            }

            _context.Entry(workout).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!WorkoutExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
コード例 #3
0
        public async Task <ActionResult <User> > PostUser(User user)
        {
            _context.Users.Add(user);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetUser", new { id = user.UserId }, user));
        }
コード例 #4
0
        public async Task <IActionResult> PutUser(int id, User user)
        {
            if (id != user.UserId)
            {
                return(BadRequest());
            }

            _context.Entry(user).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!UserExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
コード例 #5
0
        public async Task <IActionResult> PutSession(int id, Session session)
        {
            if (id != session.SessionId)
            {
                return(BadRequest());
            }

            _context.Entry(session).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!SessionExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
コード例 #6
0
        public async Task <IActionResult> Create([Bind("ID,statDate,age,weight,height,MembersID")] Stats stats)
        {
            if (ModelState.IsValid)
            {
                _context.Add(stats);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["MembersID"] = new SelectList(_context.Membership, "ID", "name", stats.MembersID);
            return(View(stats));
        }
コード例 #7
0
        public async Task <IActionResult> Create([Bind("ID,name,gender,address,city,state,zip,email,cell")] Members members)
        {
            if (ModelState.IsValid)
            {
                _context.Add(members);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewBag.gender = genderList();
            return(View(members));
        }
コード例 #8
0
        public async Task <ActionResult <Entry> > DeleteEntry(int id)
        {
            int userId = int.Parse(User.FindFirstValue(ClaimTypes.NameIdentifier));

            var entry = await _context.Entries
                        .SingleOrDefaultAsync(e => e.Id == id && e.UserId == userId);

            if (entry == null)
            {
                return(NotFound());
            }

            _context.Entries.Remove(entry);
            await _context.SaveChangesAsync();

            return(entry);
        }
コード例 #9
0
        public async Task <IHttpActionResult> StartTrainingSession()
        {
            Guid newSessionId = Guid.Empty;

            using (var db = new FitnessContext())
            {
                var session = db.TrainingSessions.Create();
                db.TrainingSessions.Add(session);
                await db.SaveChangesAsync();
            }

            return(Ok(new { status = Progress.Started }));
        }
コード例 #10
0
        public async Task <IActionResult> UpdateEntry(int id, UserNoteDto noteDto)
        {
            int userId = int.Parse(User.FindFirstValue(ClaimTypes.NameIdentifier));

            if (userId != id)
            {
                return(Unauthorized());
            }

            var user = await _authRepository.GetUser(userId);

            if (user == null)
            {
                return(NotFound());
            }

            user.Note = noteDto.Contents;

            _context.Users.Update(user);
            await _context.SaveChangesAsync();

            return(NoContent());
        }
コード例 #11
0
        public async Task <IHttpActionResult> CreateTrainingSet([FromUri] Guid sessionId, [FromBody] TrainingSetModel set)
        {
            using (var db = new FitnessContext())
            {
                var newSet = db.TrainingSets.Create();

                var exercise = await db.Exercises.FirstOrDefaultAsync(x => x.Naming == set.Naming);

                var session = await db.TrainingSessions.FirstOrDefaultAsync(x => x.Id == sessionId);

                newSet.Exercise        = exercise;
                newSet.TrainingSession = session;

                newSet.Repetitions = set.Repetitions;
                newSet.EndTime     = DateTimeOffset.Now;

                newSet = db.TrainingSets.Add(newSet);

                await db.SaveChangesAsync();
            }


            return(Ok());
        }
コード例 #12
0
 public void CompleteAsync()
 {
     _context.SaveChangesAsync();
 }