示例#1
0
        public ActionResult EditFavoriteGames(int?Id)
        {
            if (Id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            Member m = DB.Members.Find(Id);

            if (m == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.NotFound));
            }

            MemberFavoriteGamesVM mfgvm = new MemberFavoriteGamesVM();

            mfgvm.Member = m;

            foreach (Game g in DB.Games.ToList())
            {
                FavoriteGame fg = new FavoriteGame();
                fg.Id         = g.Id;
                fg.isFavorite = m.Games.Contains(g);
                fg.GameInfo   = $"{g.Title} ({g.Studio})";

                mfgvm.FavoriteGames.Add(fg);
            }


            return(View(mfgvm));
        }
示例#2
0
        public ActionResult EditFavoriteGames(MemberFavoriteGamesVM mfgvm)
        {
            if (ModelState.IsValid)
            {
                Member m = DB.Members.Find(mfgvm.Member.Id);
                DB.Entry(m).State = System.Data.Entity.EntityState.Modified;


                foreach (FavoriteGame fg in mfgvm.FavoriteGames)
                {
                    Game g = DB.Games.Find(fg.Id);

                    if (fg.isFavorite)
                    {
                        m.Games.Add(g);
                    }
                    else
                    {
                        m.Games.Remove(g);
                    }
                }
                DB.SaveChanges();
                return(RedirectToAction("Detail", new { Id = m.Id }));
            }
            else
            {
                return(View(mfgvm));
            }
        }