Si no sabe cuántos elementos de matriz hay en la matriz de argumentos, intente utilizar string.Join().
string.Format("Arguments passed in to the program are: {0}", string.Join(" ", args));
Específicamente en su ejemplo:
string.Format("Her name is {0} years old", string.Join(" and she's ", args));
Personalmente, no me gusta estructuras codificadas de forma rígida de un objeto array. Eso es demasiado para recordar durante la aplicación y hace que sea difícil de mantener. Prefiero convertir los argumentos en un objeto "Persona" con un constructor que acepte la matriz, y sobrecargar ToString() para mostrar la información específica sobre los miembros del objeto.
class Person
{
private string m_sName;
private string m_sAge;
public Person(string[] args)
{
m_sName = args[0];
m_sAge = args[1];
}
public override string ToString()
{
return string.Format("Her name is {0} and she's {1} years old.", m_sName, m_sAge);
}
}
Para que pueda construir un objeto "Persona" y mostrar el mensaje cuando se le llame.
var oNewPerson = new Person(args);
console.WriteLine(oNewPerson.ToString());
Esto es muy similar a un ejemplo de Microsoft:
http://msdn.microsoft.com/en-us/library/ms173154(v=vs.80).aspx
¿Tiene una pregunta? – leppie