public ActionResult Create(FormCollection collection) { //try { ServiceReference.TournoiWS tournoi = new ServiceReference.TournoiWS(); List<JediWS> jediList = new List<JediWS>(); List<StadeWS> stadeList = new List<StadeWS>(); using (ServiceReference.ServiceClient service = new ServiceReference.ServiceClient()) { service.getJedis().ForEach(x => jediList.Add(x)); service.getStades().ForEach(x => stadeList.Add(x)); tournoi.Id = 0; tournoi.Nom = Convert.ToString(collection.Get("Item1.Nom")); tournoi.Matches = new List<MatchWS>(); // Va chercher jedi1, jedi2 et stade pour les huitieme for (int i = (int)EPhaseTournoiWS.HuitiemeFinale1; i >= (int)EPhaseTournoiWS.HuitiemeFinale8; i--) { MatchWS m = new MatchWS(); m.Id = 0; m.JediVainqueur = null; m.Phase = ((EPhaseTournoiWS)i); m.Stade = stadeList.First(x => x.Id == Convert.ToInt32(collection.Get("stadefor" + i))); m.Jedi1 = jediList.First(x => x.Id == Convert.ToInt32(collection.Get("jedi1for" + i))); m.Jedi2 = jediList.First(x => x.Id == Convert.ToInt32(collection.Get("jedi2for" + i))); tournoi.Matches.Add(m); // TODO : ai-je besoin des participants ? } // Va chercher stade pour les autres phases for (int i = (int)EPhaseTournoiWS.QuartFinale1; i >= (int)EPhaseTournoiWS.Finale; i--) { MatchWS m = new MatchWS(); m.Id = 0; m.JediVainqueur = null; m.Jedi1 = null; m.Jedi2 = null; m.Phase = ((EPhaseTournoiWS)i); m.Stade = stadeList.First(x => x.Id == Convert.ToInt32(collection.Get("stadefor" + i))); tournoi.Matches.Add(m); } List<MatchWS> vraiMatches = new List<MatchWS>(); foreach (var m in tournoi.Matches) { service.addMatch(m); } List<MatchWS> mmm = service.getMatches(); foreach (var m in tournoi.Matches) { if (m.Phase >= EPhaseTournoiWS.HuitiemeFinale8) { vraiMatches.Add(mmm.Find(x => x.Phase == m.Phase && x.Jedi1.Nom == m.Jedi1.Nom && x.Jedi2.Nom == m.Jedi2.Nom && x.Stade.Planete == m.Stade.Planete)); } else { vraiMatches.Add(mmm.Find(x => x.Stade.Planete == m.Stade.Planete && x.Phase == m.Phase)); } } tournoi.Matches = vraiMatches; service.addTournoi(tournoi); } return RedirectToAction("Index"); //} catch { // return View("Error"); //} }
public ActionResult Create(FormCollection collection) { //try { ServiceReference.TournoiWS tournoi = new ServiceReference.TournoiWS(); List <JediWS> jediList = new List <JediWS>(); List <StadeWS> stadeList = new List <StadeWS>(); using (ServiceReference.ServiceClient service = new ServiceReference.ServiceClient()) { service.getJedis().ForEach(x => jediList.Add(x)); service.getStades().ForEach(x => stadeList.Add(x)); tournoi.Id = 0; tournoi.Nom = Convert.ToString(collection.Get("Item1.Nom")); tournoi.Matches = new List <MatchWS>(); // Va chercher jedi1, jedi2 et stade pour les huitieme for (int i = (int)EPhaseTournoiWS.HuitiemeFinale1; i >= (int)EPhaseTournoiWS.HuitiemeFinale8; i--) { MatchWS m = new MatchWS(); m.Id = 0; m.JediVainqueur = null; m.Phase = ((EPhaseTournoiWS)i); m.Stade = stadeList.First(x => x.Id == Convert.ToInt32(collection.Get("stadefor" + i))); m.Jedi1 = jediList.First(x => x.Id == Convert.ToInt32(collection.Get("jedi1for" + i))); m.Jedi2 = jediList.First(x => x.Id == Convert.ToInt32(collection.Get("jedi2for" + i))); tournoi.Matches.Add(m); // TODO : ai-je besoin des participants ? } // Va chercher stade pour les autres phases for (int i = (int)EPhaseTournoiWS.QuartFinale1; i >= (int)EPhaseTournoiWS.Finale; i--) { MatchWS m = new MatchWS(); m.Id = 0; m.JediVainqueur = null; m.Jedi1 = null; m.Jedi2 = null; m.Phase = ((EPhaseTournoiWS)i); m.Stade = stadeList.First(x => x.Id == Convert.ToInt32(collection.Get("stadefor" + i))); tournoi.Matches.Add(m); } List <MatchWS> vraiMatches = new List <MatchWS>(); foreach (var m in tournoi.Matches) { service.addMatch(m); } List <MatchWS> mmm = service.getMatches(); foreach (var m in tournoi.Matches) { if (m.Phase >= EPhaseTournoiWS.HuitiemeFinale8) { vraiMatches.Add(mmm.Find(x => x.Phase == m.Phase && x.Jedi1.Nom == m.Jedi1.Nom && x.Jedi2.Nom == m.Jedi2.Nom && x.Stade.Planete == m.Stade.Planete)); } else { vraiMatches.Add(mmm.Find(x => x.Stade.Planete == m.Stade.Planete && x.Phase == m.Phase)); } } tournoi.Matches = vraiMatches; service.addTournoi(tournoi); } return(RedirectToAction("Index")); //} catch { // return View("Error"); //} }
public void TestServiceARTournois() { ServiceReference.ServiceClient client = new ServiceReference.ServiceClient(); List<TournoiWS> tournois = client.getTournois(); int size = tournois.Count; Assert.IsNotNull(tournois); /* AJOUT */ TournoiWS bob = new TournoiWS(0, "Test", new List<MatchWS>()); client.addTournoi(bob); Assert.AreEqual(size + 1, client.getTournois().Count); /* SUPPRESSION */ bob = client.getTournois().Find(x => x.Nom.Equals("Test")); client.removeTournoi(bob); Assert.AreEqual(size, client.getTournois().Count); client.Close(); }