I would say typeof() returns a string, telling the type, so it's never an array.
Maybe you want if (typeof(Array)=='System.Array')
if (typeof(Array)=='System.Array')
Nota: i never coded in c# .