2010-11-10 2 views
-1

je besoin d'un extention pour convertir ToSelectList une liste d'éléments (chaînes ou ints)MVC SelectList SelectValues ​​

J'ai trouvé ceci:

 public static SelectList ToSelectList<T>(this IEnumerable<T> collection, 
          string dataValueField, string dataTextField, string selectedValue) 
    { 
     return new SelectList(collection, dataValueField, dataTextField, selectedValue); 
    } 

mais cela ne gère pas plusieurs valeurs sélectionnées. J'ai essayé avec ceci:

 public static SelectList ToSelectList<T>(this IEnumerable<T> collection, 
        string dataValueField, string dataTextField, IEnumerable<T> selectedValues) 
    { 
     var list = new SelectList(collection, dataValueField, dataTextField, selectedValues); 
     return list; 
    } 

mais il ne fonctionne pas. aidez s'il vous plaît!

+0

12 questions maintenant; toujours pas une seule réponse acceptée ou un vote, malgré de nombreuses réponses utiles, souvent élaborées. –

Répondre

0

Je n'ai pas testé mais essayez ceci:

public static SelectList ToSelectList<T>(
    this IEnumerable<T>  collection, 
     string    dataValueField, 
     string    dataTextField,   
     IEnumerable<string> selectedValues) 
{ 
    var list = new SelectList(collection, dataValueField, dataTextField); 
    foreach (var item in list.Items) 
    { 
     if (selectedValues.Contains(item.Value) 
     { 
      item.Selected = true; 
     } 
    } 
    return list; 
} 
Questions connexes