Пример #1
0
        public IHttpActionResult PostFeedback(Feedback feedback)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            var systemKey = db.SystemKeys.FirstOrDefault(x => x.Key == feedback.Key);
            if (systemKey == null)
            {
                return BadRequest("No system found by this key");
            }

            //if (Request.Headers.Referrer.Authority == systemKey.Url)
            //{
            //    return BadRequest("The request is not allowed");
            //}

            feedback.System = systemKey.System;
            feedback.UserIpAddress = HttpContext.Current != null ? HttpContext.Current.Request.UserHostAddress : "";
            db.Feedbacks.Add(feedback);

            feedback.CreatedOn = DateTime.Now;
            db.SaveChanges();

            return CreatedAtRoute("DefaultApi", new { id = feedback.Id }, feedback);
        }
Пример #2
0
        public IHttpActionResult PutFeedback(int id, Feedback feedback)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            if (id != feedback.Id)
            {
                return BadRequest();
            }

            db.Entry(feedback).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!FeedbackExists(id))
                {
                    return NotFound();
                }
                else
                {
                    throw;
                }
            }

            return StatusCode(HttpStatusCode.NoContent);
        }