예제 #1
0
        public IHttpActionResult PutUserFavoriteItem(int id, UserFavoriteItem userFavoriteItem)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != userFavoriteItem.UserFavoriteItemID)
            {
                return(BadRequest());
            }

            db.Entry(userFavoriteItem).State = System.Data.Entity.EntityState.Modified;

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

            return(StatusCode(HttpStatusCode.NoContent));
        }
예제 #2
0
        public void AddRssItemFavorite(string login, string title)
        {
            UserFavoriteItem userFavoriteItem;

            using (_db = new ApplicationContext())
            {
                var userId    = _db.Users.Where(u => u.Login == login).Select(p => p.Id).First();
                var rssItemId = _db.RssItems.Where(ri => ri.Title == title).Select(ri => ri.Id).First();

                userFavoriteItem = _db.UserFavoriteItems.Where(ufi => ufi.RssItemId == rssItemId && ufi.UserId == userId).FirstOrDefault();

                if (userFavoriteItem != null)
                {
                    return;
                }

                userFavoriteItem = new UserFavoriteItem
                {
                    UserId    = userId,
                    RssItemId = rssItemId
                };

                _db.UserFavoriteItems.Add(userFavoriteItem);
                _db.SaveChanges();
            }
        }
예제 #3
0
        public IHttpActionResult GetUserFavoriteItem(int id)
        {
            UserFavoriteItem userFavoriteItem = db.UserFavoriteItems.Find(id);

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

            return(Ok(userFavoriteItem));
        }
예제 #4
0
        public IHttpActionResult PostUserFavoriteItem(UserFavoriteItem userFavoriteItem)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.UserFavoriteItems.Add(userFavoriteItem);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = userFavoriteItem.UserFavoriteItemID }, userFavoriteItem));
        }
예제 #5
0
        public void RemoveRssItemFavorite(string login, string title)
        {
            using (_db = new ApplicationContext())
            {
                var userId    = _db.Users.Where(u => u.Login == login).Select(p => p.Id).First();
                var rssItemId = _db.RssItems.Where(ri => ri.Title == title).Select(ri => ri.Id).First();

                UserFavoriteItem favoriteItem = _db.UserFavoriteItems.Where(fi => fi.RssItemId == rssItemId && fi.UserId == userId).FirstOrDefault();

                _db.UserFavoriteItems.Remove(favoriteItem);
                _db.SaveChanges();
            }
        }
예제 #6
0
        public IHttpActionResult DeleteUserFavoriteItem(int id)
        {
            UserFavoriteItem userFavoriteItem = db.UserFavoriteItems.Find(id);

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

            db.UserFavoriteItems.Remove(userFavoriteItem);
            db.SaveChanges();

            return(Ok(userFavoriteItem));
        }
예제 #7
0
        public bool CheckedFavoriteItem(string login, string title)
        {
            bool flag = false;

            using (_db = new ApplicationContext())
            {
                var userId    = _db.Users.Where(u => u.Login == login).Select(p => p.Id).First();
                var rssItemId = _db.RssItems.Where(ri => ri.Title == title).Select(ri => ri.Id).First();

                UserFavoriteItem favoriteItem = _db.UserFavoriteItems.Where(fi => fi.RssItemId == rssItemId && fi.UserId == userId).FirstOrDefault();

                if (favoriteItem != null)
                {
                    flag = true;
                }
            }

            return(flag);
        }