Example #1
0
        public Category AddCategory(Category category)
        {
            _db.Categories.Add(category);
            _db.SaveChanges();

            return category;
        }
        /// <summary>
        /// Insert new category
        /// </summary>
        /// <param name="category">Category object</param>
        /// <returns></returns>
        public IHttpActionResult PostCategory(Category category)
        {
            if (!ModelState.IsValid)
                return BadRequest(ModelState);

            var addedCategory = _catService.AddCategory(category);
            if (addedCategory == null)
                return BadRequest();

            return CreatedAtRoute("DefaultApi", new { id = category.Id }, category);
        }
Example #3
0
        public Category UpdateCategory(Category category)
        {
            bool categoryExists = category.Id > 0 && _db.Categories.Any(c => c.Id == category.Id);
            if (categoryExists)
            {
                _db.Entry(category).State = System.Data.Entity.EntityState.Modified;
                _db.SaveChanges();

                return category;
            }

            return null;
        }
        /// <summary>
        /// Update existing category
        /// </summary>
        /// <param name="id">Category id</param>
        /// <param name="category">Category object with new values</param>
        /// <returns></returns>
        public IHttpActionResult PutCategory(int id, Category category)
        {
            if (!ModelState.IsValid)
                return BadRequest(ModelState);

            if (id != category.Id)
                return BadRequest();

            try
            {
                var updatedCategory = _catService.UpdateCategory(category);
                if (updatedCategory == null)
                    return NotFound();
            }
            catch (Exception)
            {
                throw;
            }

            return StatusCode(HttpStatusCode.NoContent);
        }