public void PlayerFormView_InsertItem(Player player)
        {
            if (TryUpdateModel(player))
            {
                try
                {
                    Service.SavePlayer(player);
                    var checkBoxList = PlayerFormView.FindControl("CheckBoxList") as CheckBoxList;

                    //loopar igenom kryssrutorna
                    for (int i = 0; i < checkBoxList.Items.Count; i++)
                    {
                        //om positionen är vald sparas den
                        if (checkBoxList.Items[i].Selected)
                        {
                            var position = new Position();
                            position.PlTypeID = byte.Parse(checkBoxList.Items[i].Value);
                            position.PlayerID = player.PlayerID;
                            Service.SavePosition(position);
                        }
                    }

                    Page.SetTempData("successMessage", "The player was inserted!");
                    Response.RedirectToRoute("Details", new { id = player.PlayerID });
                    Context.ApplicationInstance.CompleteRequest();

                }

                catch
                {
                    ModelState.AddModelError(String.Empty, "Ett fel inträffade när spelare skulle läggas till");
                }

            }
        }
        public void FormView1_UpdateItem(int PlayerID)
        {
            var player = Service.GetPlayerByID(PlayerID);

            if (player == null)
            {
                // spelaren hittades inte
                ModelState.AddModelError(String.Empty, String.Format("Spelaren med spelarID {0} hittades inte", PlayerID));
                return;
            }

            //om player klarar valideringen
            if (TryUpdateModel(player))
            {
                //sparar spelarens nya uppgifter
                Service.SavePlayer(player);

                var checkBoxList = FormView1.FindControl("CheckBoxList") as CheckBoxList;

                //hämtar ut en lista på spelarens positioner
                //som används för att kolla om spelaren redan har vald position
                var playrPos = Service.GetPosition(PlayerID).ToList();

                //loopar igenom alla kryssrutor
                for (int i = 0; i < checkBoxList.Items.Count; i++)
                {
                    //skapar en ny instans av Position-objektet så man kan spara flera positioner
                    var position = new Position();
                    position.PlTypeID = byte.Parse(checkBoxList.Items[i].Value);
                    position.PlayerID = player.PlayerID;

                    //om inte kryssrutan är vald
                    if (!checkBoxList.Items[i].Selected)
                    {
                        //loopar igenom spelarens nuvarande positioner
                        for (int x = 0; x < playrPos.Count; x++)
                        {
                           //om positionen finns i databasen tas den bort
                            if (playrPos[x].PlTypeID == position.PlTypeID)
                            {
                                Service.DeletePosition(position);
                            }
                        }
                    }

                    //ifall positionen är vald sparas den
                    else
                    {
                            Service.SavePosition(position);
                    }
                }

                Page.SetTempData("successMessage", "The player was updated!");
                Response.RedirectToRoute("Details", new { id = PlayerID });
                Context.ApplicationInstance.CompleteRequest();
                }
        }
 public void DeletePosition(Position position)
 {
     PositionDAL.DeletePosition(position);
 }
 public void SavePosition(Position position)
 {
     PositionDAL.InsertPosition(position);
 }