Ho un oggetto dynamic
che a volte è un object
ea volte è un object[]
.Come verificare se un oggetto dinamico è una matrice in C#?
Come posso verificare se l'oggetto dinamico è un array?
Ho un oggetto dynamic
che a volte è un object
ea volte è un object[]
.Come verificare se un oggetto dinamico è una matrice in C#?
Come posso verificare se l'oggetto dinamico è un array?
Uso Type.IsArray
:
Da MSDN:
int [] array = {1,2,3,4};
Type t = array.GetType();
// t.IsArray == true
Console.WriteLine("The type is {0}. Is this type an array? {1}", t, t.IsArray);
Perché non solo 'è' operatore (Ho appena fatto test rapido sulle finestre immediati di debugger di Visual Studio), e funziona. ma non sono sicuro che la risposta di Tim sia ottimale.
void foo(object o)
{
if(o is System.Array)
{
//its array
}
}
you'r destra, ho pensato che non avrebbe funzionato solo perché è dinamica (GetType non viene visualizzato sul intellisense, ovviamente ...), ma dopo la compilazione funziona benissimo. Grazie – RollRoll