Ejemplo n.º 1
0
        public async Task <IHttpActionResult> PutSportsCenter(int id, SportsCenter sportsCenter)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != sportsCenter.CenterId)
            {
                return(BadRequest());
            }
            using (SportsContext db = new SportsContext())
            {
                db.Entry(sportsCenter).State = EntityState.Modified;

                try
                {
                    await db.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (db.SportsCenters.Count(e => e.CenterId == id) <= 0)
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Ejemplo n.º 2
0
        public async Task <IHttpActionResult> GetSportsCenter(Guid id)
        {
            using (SportsContext db = new SportsContext())
            {
                SportsCenter sportsCenter = await db.SportsCenters.FindAsync(id);

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

                return(Ok(sportsCenter));
            }
        }
Ejemplo n.º 3
0
        public async Task <IHttpActionResult> PostSportsCenter(SportsCenter sportsCenter)
        {
            Database.SetInitializer(new DropCreateDatabaseIfModelChanges <SportsContext>());
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            using (SportsContext db = new SportsContext())
            {
                db.SportsCenters.Add(sportsCenter);
                int effetiveRow = await db.SaveChangesAsync();
            }

            return(CreatedAtRoute("DefaultApi", new { id = sportsCenter.CenterId }, sportsCenter));
        }
Ejemplo n.º 4
0
        public async Task <IHttpActionResult> Delete(Guid id)
        {
            using (SportsContext db = new SportsContext())
            {
                SportsCenter sportsCenter = await db.SportsCenters.FindAsync(id);

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

                db.SportsCenters.Remove(sportsCenter);
                await db.SaveChangesAsync();

                return(Ok(sportsCenter));
            }
        }
        public async Task <SportsCenterCreateRes> CreateAsync(SportsCenterCreateReq req)
        {
            SportsCenter sportsCenter = new SportsCenter
            {
                Name        = req.Name,
                PhotoUrl    = req.PhotoUrl,
                Description = req.Description,
            };

            _dbContext.SportsCenters.Add(sportsCenter);
            await _dbContext.SaveChangesAsync();

            #region Handle Fields

            IEnumerable <SportGetListResItem> sports = await _sports.GetListAsync(new SportGetListReq { });

            foreach (string sport in req.SelectedSports)
            {
                int sportId = sports
                              .Where(s => s.Name == sport)
                              .Select(s => s.Id)
                              .FirstOrDefault();

                Field field = new Field
                {
                    SportId        = sportId,
                    SportsCenterId = sportsCenter.Id
                };

                _dbContext.Fields.Add(field);
            }

            await _dbContext.SaveChangesAsync();


            #endregion

            return(new SportsCenterCreateRes {
                Id = sportsCenter.Id
            });
        }