Le meilleur moyen d'ajouter une nouvelle ligne à la chaîne sauf pour la dernière

J'étais à la recherche de la meilleure/la plus propre façon d'itérer sur une liste de chaînes de caractères, puis de créer une chaîne unique de ceux qui sont séparés par des retours à la ligne (sauf la dernière). Comme:

String 1
String 2
String 3

J'ai écrit deux boucles d'ici qui a un caractère de saut de ligne à la fin de la chaîne (qui je veux éviter) et un autre qui ne l'est pas. L'un n'a pas ne semble tout simplement pas "propre" pour moi. Je pense qu'il y aurait un moyen plus simple de faire en sorte que la logique est à peu près aussi simple que dans l'exemple qui dispose d'une nouvelle ligne à la fin de la chaîne.

List<string> errorMessages = new List<string>();
string messages = "";

//Adds newline to last string. Unwanted.
foreach(string msg in errorMessages)
{
    messages += msg + "\n";
}

messages = "";
bool first = true;

//Avoids newline on last string
foreach (string msg in errorMessages)
{
    if(first)
    {
        first = false;
        messages = msg;
    }
    else
    {
        messages += "\n" + msg;
    }
}

Peut-être que c'est un vœu pieux, mais j'aurais pensé que c'était une commune occurrence suffisamment pour justifier un meilleur moyen d'atteindre mon but.

source d'informationauteur Justin