28 votes

Comment utiliser la réflexion pour déterminer le type imbriqué (type d'élément) d'un tableau?

J'ai une instance de System.Type, pour laquelle "IsArray" renvoie vrai.

Comment puis-je déterminer le "type imbriqué" du type de tableau?

c'est à dire

 Type GetArrayType(Type t)
{
    if(t.IsArray)
    {
        //  What to put here?
    }
    throw new Exception("Type is not an array");
}
Assert.That(GetArrayType(typeof(string[])), Iz.EqualTo(typeof(string));
Assert.That(GetArrayType(typeof(Foo[])), Iz.EqualTo(typeof(Foo));
 

43voto

swilliams Points 19415
 t.GetElementType()
 

Référence .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X