コード例 #1
0
        public IHttpActionResult Post([FromBody] PersonalRankingDto personalRank)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var maxId = personalRankings.Max(x => x.ID);

            personalRank.ID = ++maxId;

            personalRankings.Add(personalRank);

            //Wprowadzenie zmian do bazy danych!
            PersonalRanking personalRanking = new PersonalRanking
            {
                ID       = Int32.Parse(personalRank.ID.ToString()),
                Score    = Int32.Parse(personalRank.Score.ToString()),
                UserInfo = new UserInfo
                {
                    ID              = Int32.Parse(personalRank.User.ID.ToString()),
                    FirstName       = personalRank.User.FirstName.ToString(),
                    Surname         = personalRank.User.Surname.ToString(),
                    EyeColor        = personalRank.User.EyeColor.ToString(),
                    FavouriteAnimal = personalRank.User.FavouriteAnimal.ToString()
                }
            };

            context.PersonalRankings.InsertOnSubmit(personalRanking);
            context.SubmitChanges();

            MakeARankingList();

            return(CreatedAtRoute("GetRanking", new { id = personalRank.ID }, personalRank));
        }
コード例 #2
0
        public IHttpActionResult Post([FromBody] PersonalRankingDto personalRank)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var maxId = personalRankings.Max(x => x.ID);

            personalRank.ID = ++maxId;

            personalRankings.Add(personalRank);

            return(CreatedAtRoute("GetRanking", new { id = personalRank.ID }, personalRank));
        }
コード例 #3
0
        public IHttpActionResult Put([FromBody] PersonalRankingDto personalRank, int id)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var rankingToEdit = personalRankings.SingleOrDefault(x => x.ID == id);

            if (rankingToEdit == null)
            {
                return(NotFound());
            }
            rankingToEdit.Score = personalRank.Score;
            rankingToEdit.User  = personalRank.User;

            return(StatusCode(HttpStatusCode.NoContent));
        }
コード例 #4
0
        public IHttpActionResult Put([FromBody] PersonalRankingDto personalRank, int id)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var rankingToEdit = personalRankings.SingleOrDefault(x => x.ID == id);

            if (rankingToEdit == null)
            {
                return(NotFound());
            }
            rankingToEdit.Score = personalRank.Score;
            rankingToEdit.User  = personalRank.User;

            //Wprowadzenie zmian do bazy danych!
            PersonalRanking personalRanking = (from element in context.PersonalRankings
                                               where element.ID == id
                                               select element).FirstOrDefault();

            if (personalRanking != null)
            {
                personalRanking.ID       = Int32.Parse(personalRank.ID.ToString());
                personalRanking.Score    = Int32.Parse(personalRank.Score.ToString());
                personalRanking.UserInfo = new UserInfo
                {
                    ID              = Int32.Parse(personalRank.User.ID.ToString()),
                    FirstName       = personalRank.User.FirstName.ToString(),
                    Surname         = personalRank.User.Surname.ToString(),
                    EyeColor        = personalRank.User.EyeColor.ToString(),
                    FavouriteAnimal = personalRank.User.FavouriteAnimal.ToString()
                };

                context.SubmitChanges();
            }

            MakeARankingList();

            return(StatusCode(HttpStatusCode.NoContent));
        }