XElemento y Lista <T>

Tengo una clase que tiene las siguientes propiedades:

public class Author {
  public string FirstName { get; set; }
  public string LastName { get; set; }
}

A continuación, tengo una lista de autores así:

List<Author> authors = new List<Author> ();

authors.add(
  new Author { 
    FirstName = "Steven",
    LastName = "King"
  });

authors.add(
  new Author { 
    FirstName = "Homer",
    LastName = ""
  });

Ahora, estoy tratando de usar Linq to XML para generar el XML que representa mi Lista de Autores.

new XElement("Authors",
  new XElement("Author", 
    from na in this.Authors
    select new XElement("First", na.First)))

El bloque anterior no genera el XML como lo espero. Lo que obtengo es:

<Authors>
  <Author>
    <First>Steven</First>
    <First>Homer</First>
  </Author>
<Authors>

Cómo quiero que se vea la salida XML es:

<Authors>
  <Author>
    <First>Steven</First>
    <Last>King</Last>
  </Author>
  <Author>
    <First>Homer</First>
    <Last></Last>
  </Author>
</Authors>

¡Cualquier ayuda sobre cómo hacer que el XML se vea como lo necesito sería enormemente apreciada!

Respuestas a la pregunta(2)

Su respuesta a la pregunta