Manejo de cadenas CSV

Forma típica de crear unCSV cadena (pseudocódigo):

Cree un objeto contenedor CSV (como un StringBuilder en C #).Recorra las cadenas que desea agregar agregando una coma después de cada una.Después del bucle, elimine esa última coma superflua.

Código de muestra:

public string ReturnAsCSV(ContactList contactList)
{
    StringBuilder sb = new StringBuilder();
    foreach (Contact c in contactList)
    {
        sb.Append(c.Name + ",");
    }

    sb.Remove(sb.Length - 1, 1);
    //sb.Replace(",", "", sb.Length - 1, 1)

    return sb.ToString();
}

Me gusta la idea de agregar la coma al verificar si el contenedor está vacío, pero ¿eso no significa más procesamiento ya que necesita verificar la longitud de la cadena en cada aparición?

Siento que debería haber una forma más fácil / más limpia / más eficiente de eliminar esa última coma. ¿Algunas ideas?

Respuestas a la pregunta(13)

Su respuesta a la pregunta