Ejemplo n.º 1
0
        // POST api/FishEvent
        public HttpResponseMessage PostFishEvent(FishEvent fishevent)
        {
            logger.Info(fishevent);
            if (ModelState.IsValid)
            {
                try
                {
                    var user = db.Users.Find(fishevent.User.Id);
                    fishevent.User = user;

                    db.FishEvents.AddOrUpdate(fishevent);
                    db.SaveChanges();
                }
                catch (Exception e)
                {
                    var sb = new StringBuilder();
                    sb.AppendLine(e.Message);
                    sb.AppendLine("Inner Exceptions: ");

                    Exception ex = e;
                    while((ex = ex.InnerException) != null)
                    {
                        sb.AppendLine("Inner Exception: " + e.InnerException.Message);
                    }

                    sb.AppendLine("StackTrace: " + e.StackTrace);

                    logger.Error(sb.ToString());
                }

                HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.Created, new { FishEvent = fishevent });
                response.Headers.Location = new Uri(Url.Link("DefaultApi", new { id = fishevent.Id }));
                return response;
            }
            else
            {
                return Request.CreateResponse(HttpStatusCode.BadRequest);
            }
        }
Ejemplo n.º 2
0
        // PUT api/FishEvent/5
        public HttpResponseMessage PutFishEvent(int id, FishEvent fishevent)
        {
            if (ModelState.IsValid && id == fishevent.Id)
            {
                db.Entry(fishevent).State = EntityState.Modified;

                try
                {
                    db.SaveChanges();
                }
                catch (DbUpdateConcurrencyException)
                {
                    return Request.CreateResponse(HttpStatusCode.NotFound);
                }

                return Request.CreateResponse(HttpStatusCode.OK);
            }
            else
            {
                return Request.CreateResponse(HttpStatusCode.BadRequest);
            }
        }