public void RemplirListesDeroulantesEtPreselectionnerHobbies(Membre membre, bool sansButPrecisInclus = true) { try { #region ViewBagsDeBase ViewBag.listeYeuxCouleur = new SelectList(db.YeuxCouleurs, "noYeuxCouleur", "nomYeuxCouleur", membre.noYeuxCouleur); ViewBag.listeCheveuxCouleur = new SelectList(db.CheveuxCouleurs, "noCheveuxCouleur", "nomCheveuxCouleur", membre.noCheveuxCouleur); ViewBag.listeSilhouette = new SelectList(db.Silhouettes, "noSilhouette", "nomSilhouette", membre.noSilhouette); ViewBag.listeTaille = new SelectList(db.Tailles, "noTaille", "taille", membre.noTaille); ViewBag.listeReligion = new SelectList(db.Religions, "noReligion", "religion", membre.noReligion); ViewBag.listeOrigine = new SelectList(db.Origines, "noOrigine", "origine", membre.noOrigine); ViewBag.listeOccupation = new SelectList(db.Occupations, "noOccupation", "nomOccupation", membre.noOccupation); ViewBag.listeSituationFinanciere = new SelectList(db.SituationsFinancieres, "noSituationFinanciere", "nomSituationFinanciere", membre.noSituationFinanciere); ViewBag.listeNiveauEtude = new SelectList(db.NiveauEtudes, "noNiveauEtude", "nomNiveauEtude", membre.noNiveauEtude); ViewBag.listeDesirEnfant = new SelectList(db.DesirEnfants, "noDesirEnfant", "desirEnfant", membre.noDesirEnfant); ViewBag.listeProvince = new SelectList(db.Provinces.OrderBy(p => p.nomProvince), "noProvince", "nomProvince"); ViewBag.estFumeur = new List <SelectListItem> { new SelectListItem { Text = "Oui", Value = true.ToString() }, new SelectListItem { Text = "Non", Value = false.ToString() }, }; ViewBag.sexe = new List <SelectListItem> { new SelectListItem { Text = "Femme", Value = false.ToString() }, new SelectListItem { Text = "Homme", Value = true.ToString() }, }; ViewBag.sexeRecherche = new List <SelectListItem> { new SelectListItem { Text = "Une femme", Value = false.ToString() }, new SelectListItem { Text = "Un homme", Value = true.ToString() }, }; ViewBag.sexeRecherche2 = new List <SelectListItem> { new SelectListItem { Text = "Une femme", Value = false.ToString() }, new SelectListItem { Text = "Un homme", Value = true.ToString() }, }; #endregion ViewBag.listeHobbie = db.Hobbies.Include(p => p.type).ToList(); ViewBag.listeType = db.Types.ToList(); //spécial if (!sansButPrecisInclus) { ViewBag.raisonsSurSite = new SelectList(db.RaisonsSurSites.Where(r => r.raison != "Sans but précis"), "noRaisonSurSite", "raison"); } else { ViewBag.raisonsSurSite = new SelectList(db.RaisonsSurSites, "noRaisonSurSite", "raison"); } ViewBag.nbRaisonsSurSite = db.RaisonsSurSites.ToList().Count; RaisonsSurSite sansButPrecis = db.RaisonsSurSites.Where(r => r.raison == "Sans but précis").FirstOrDefault(); if (sansButPrecis != null) { ViewBag.noRaisonSansButPrecis = sansButPrecis.noRaisonSurSite; } if (membre.noMembre != 0) { ViewBag.listeHobbiesMembre = db.Hobbies.Where(h => h.listeMembre.Any(m => m.noMembre == membre.noMembre)).ToList(); } } catch (Exception e) { Dictionary <string, string> parametres = new Dictionary <string, string>() { { "noMembre", membre.noMembre.ToString() } }; throw Utilitaires.templateException("RemplirListesDeroulantesEtPreselectionnerHobbies", "Membres", "LRequête LINQ n'a pas fonctionnée ou la BD est inaccessible.", e, parametres, "post"); } }
public ActionResult Home() { PreInscription preInscription = new PreInscription(); List <Membre> selectionDuMoisPremiumRecent = db.Abonnements.Where(m => m.membre.dateSuppressionDuCompte == null && m.membre.compteSupprimeParAdmin == null) .OrderByDescending(m => m.datePaiement) .DistinctBy(m => m.noMembre) .Select(m => m.membre) .Take(6) .ToList(); List <int> listeNoMembre = selectionDuMoisPremiumRecent.Select(m => m.noMembre).ToList(); List <Membre> selectionDuMoisNouveauxMembres = db.Membres.Where(m => !listeNoMembre.Contains(m.noMembre) && (m.dateSuppressionDuCompte == null && m.compteSupprimeParAdmin == null) ) .OrderByDescending(m => m.dateInscription) .Take(6) .ToList(); selectionDuMoisNouveauxMembres.AddRange(selectionDuMoisPremiumRecent); ViewBag.selectionDuMois = selectionDuMoisNouveauxMembres; if (Request.IsAuthenticated) { int no; verifierSiCookieNoMembreExiste(out no); if (no != -1) { Membre membreConnnecte = db.Membres.Where(p => p.noMembre == no).FirstOrDefault(); /*List<Visite> cinqDernieresVisites = db.Visites.Where(m => m.noMembreVisite == no) * .OrderBy(m => m.dateVisite) * .DistinctBy(m => m.noMembreVisiteur) * .Take(5).ToList(); * * //Méthode assez peu conventionnelle, mais comme on ne sauvegardera pas les données, * //on peut se permettre de modifier les cartes ;) * membreConnnecte.listeDeVisitesDeMonProfil = cinqDernieresVisites;*/ ViewBag.premium = membreConnnecte.premium; return(View("AccueilMembres", membreConnnecte)); } } ViewBag.sexe = new SelectList(new SelectListItem[] { new SelectListItem { Text = "Une femme", Value = false.ToString() }, new SelectListItem { Text = "Un homme", Value = true.ToString() }, }, "Value", "Text"); ViewBag.raisonsSurSite = new SelectList(db.RaisonsSurSites, "noRaisonSurSite", "raison"); ViewBag.nbRaisonsSurSite = db.RaisonsSurSites.ToList().Count; RaisonsSurSite sansButPrecis = db.RaisonsSurSites.Where(r => r.raison == "Sans but précis").FirstOrDefault(); if (sansButPrecis != null) { ViewBag.noRaisonSansButPrecis = sansButPrecis.noRaisonSurSite; } return(View("AccueilVisiteurs", preInscription)); }