예제 #1
0
        // POST api/driver
        public HttpResponseMessage Post(Driver value)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    using (KartingEntities entities = new KartingEntities())
                    {
                        entities.Driver.Add(value);
                        entities.SaveChanges();

                        var response = Request.CreateResponse(HttpStatusCode.OK);
                        response.Content = new StringContent(value.Id.ToString(), Encoding.UTF8, "application/json");
                        return(response);
                        //return Request.CreateResponse(HttpStatusCode.OK);
                    }
                }
                else
                {
                    return(Request.CreateResponse(HttpStatusCode.InternalServerError, "invalid New Value"));
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, ex.Message));
            }
        }
예제 #2
0
 // GET api/driver/5
 public Driver Get(int id)
 {
     using (KartingEntities entities = new KartingEntities())
     {
         return(entities.Driver.SingleOrDefault <Driver>(b => b.Id == id));
     }
 }
예제 #3
0
 // GET api/driver
 public IEnumerable <Driver> Get()
 {
     using (KartingEntities entities = new KartingEntities())
     {
         return(entities.Driver.ToList <Driver>());
     }
 }
예제 #4
0
 // GET: api/Races
 public IEnumerable <Race> Get()
 {
     using (KartingEntities entities = new KartingEntities())
     {
         return(db.Race.Include(b => b.RaceResultSet.Select(r => r.Driver)));
         //return entities.Race.ToList<Race>();
     }
 }
예제 #5
0
        public IHttpActionResult PostRace(Race race)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    using (KartingEntities entities = new KartingEntities())
                    {
                        entities.Race.Add(race);
                        entities.SaveChanges();

                        var response = Request.CreateResponse(HttpStatusCode.OK);
                        response.Content = new StringContent(race.Id.ToString(), Encoding.UTF8, "application/json");
                        return(CreatedAtRoute("DefaultApi", new { id = race.Id }, race));
                        //return Request.CreateResponse(HttpStatusCode.OK);
                    }
                }
                else
                {
                    return(BadRequest(ModelState));
                    //return Request.CreateResponse(HttpStatusCode.InternalServerError, "invalid New Value");
                }
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
            //if (!ModelState.IsValid)
            //{
            //    return BadRequest(ModelState);
            //}

            //db.Race.Add(race);

            //try
            //{
            //    db.SaveChanges();
            //}
            //catch (DbUpdateException)
            //{
            //    if (RaceExists(race.ID))
            //    {
            //        return Conflict();
            //    }
            //    else
            //    {
            //        throw;
            //    }
            //}

            //return CreatedAtRoute("DefaultApi", new { id = race.ID }, race);
        }
예제 #6
0
 // DELETE api/driver/5
 public HttpResponseMessage Delete(int id)
 {
     try
     {
         using (KartingEntities entities = new KartingEntities())
         {
             Driver drv = entities.Driver.SingleOrDefault <Driver>(b => b.Id == id);
             // delete record
             entities.Driver.Remove(drv);
             // flush to disk
             entities.SaveChanges();
             return(Request.CreateResponse(HttpStatusCode.OK));;
         }
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.InternalServerError, ex.Message));
     }
 }
예제 #7
0
 // PUT api/driver/5
 public HttpResponseMessage Put(int id, Driver value)
 {
     try
     {
         using (KartingEntities entities = new KartingEntities())
         {
             Driver drv = entities.Driver.SingleOrDefault <Driver>(b => b.Id == id);
             // update all the fields
             drv.FirstName = value.FirstName;
             drv.LastName  = value.LastName;
             drv.BirthDate = value.BirthDate;
             // flush to disk
             entities.SaveChanges();
             return(Request.CreateResponse(HttpStatusCode.OK));
         }
     }
     catch (Exception ex)
     {
         return(Request.CreateResponse(HttpStatusCode.InternalServerError, ex.Message));
     }
 }