XElement и список <T>

У меня есть класс, который имеет следующие свойства:

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

Далее у меня есть список авторов примерно так:

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

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

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

Теперь я пытаюсь использовать Linq to XML для генерации XML, представляющего мой список авторов.

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

Блок выше не генерирует XML, как я ожидаю. Что я получаю это:

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

Я хочу, чтобы вывод XML выглядел так:

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

Любая помощь в том, как заставить XML выглядеть так, как мне нужно, будет очень цениться!

Ответы на вопрос(2)

Ваш ответ на вопрос