public static SelectList ListePays(string selectedPaysId, IList <string> listepays) { //IList<string> allPays = dataProvider.PaysDataAccess.GetAllPaysString(); IList <IPays> allPaysE = (IList <IPays>)CovCake.UnCache("AllPays"); if (allPaysE == null) { allPaysE = dataProvider.PaysDataAccess.GetAllPays().ToList(); int cacheTime = CovCakeConfiguration.DefaultDataCacheExpiration; CovCake.Cache("AllPays", allPaysE, DateTime.Now.AddHours(cacheTime)); // HttpRuntime.Cache.Insert("AllPays", allPaysE, null, DateTime.Now.AddHours(cacheTime), System.Web.Caching.Cache.NoSlidingExpiration); } int selPaysId = 77; if (!selectedPaysId.IsNullOrEmpty()) { int.TryParse(selectedPaysId, out selPaysId);//france } foreach (string item in listepays) { IPays insertP = allPaysE.Single(p => p.LibellePays == item); allPaysE.Remove(insertP); allPaysE.Insert(0, insertP); } // allPays.Insert(0, "------------------------"); if (selectedPaysId.IsNullOrEmpty()) { return(new SelectList(allPaysE, "IdPays", "LibellePays")); // selectedP); } return(new SelectList(allPaysE, "IdPays", "LibellePays", selPaysId)); // selectedP); // return new SelectList(allPays, selectedPaysId); }