2010-08-13 15 views
2

J'ai un IList qui contient un type personnalisé. L'une des propriétés de ce type personnalisé est appelée ID. Comment pourrais-je le convertir sans utiliser de boucle for? Le tableau ne doit pas être du CustomType, mais si le type de ID, qui est int.Convert générique IList <CustomType> en tableau?

Merci!

Répondre

14

Essayez:

sourceList.Select(i => i.ID).ToArray();

sourceList est votre liste de type IList<CustomType>.

+0

Ceci retourne une annulable, ne marche pas il? La méthode que j'appelle avec ce tableau ne prend pas les types nullables ... que dois-je changer? – grady

+0

@grady - Le tableau retourné n'est pas une collection d'entiers NULL, ce sera un type 'int []', pas 'int? []'. En fait, si vous codez ce code 'int? [] NewArray = ......', il échouera. –

+0

Etes-vous sûr de ça? Le compilateur s'en plaint ... J'ai une méthode qui obtient un tableau d'ints et là l'erreur est levée. – grady