La Conversion de IEnumerable<T> IList

Si une méthode prend un paramètre de type de Système.Les Collections.IList puis-je légitimement/en toute sécurité passer une valeur de type System.Collections.Generic.IEnumerable<T>?

Je vous serais reconnaissant une explication détaillée des raisons pour lesquelles ce qui est possible et ce qui se passe réellement à l'objet T lorsque le IEnumerable<T> est utilisé à l'intérieur de la méthode.

Est-il converti à la base type d'Objet?

Est-il utilisé comme un System.Collections.IEnumerable?

Sont t-il des scénarios où cela va poser des problèmes (c'est à dire des problèmes de performances)?

Merci d'avance,
Jean

OriginalL'auteur John Maloney | 2010-01-04