Jak ustawić nazwę węzła głównego, gdy XmlSerializing tablicę?

Mam tablicę obiektów, które chcę serializować jako XML. Obiekty te są opatrzone przypisami, aby ustawić nazwy węzłów XML, ale zastanawiałem się, jak ustawić nazwę węzła głównego XML.

Kod wygląda tak:

// create list of items
List<ListItem> list = new List<ListItem>();
list.Add(new ListItem("A1", new Location(1, 2)));
list.Add(new ListItem("A2", new Location(2, 3)));
list.Add(new ListItem("A3", new Location(3, 4)));
list.Add(new ListItem("A4<&xyz>", new Location()));

// serialise
XmlSerializer ser = new XmlSerializer(typeof(ListItem[]));
FileStream os = new FileStream(@"d:\temp\seri.xml", FileMode.Create);
ser.Serialize(os, list.ToArray());
os.Close();

Dane wyjściowe wyglądają tak:

<?xml version="1.0"?>
<ArrayOfPlace xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Place>
    <Placename>A1</Placename>
    <Location>
      <Lat>1</Lat>
      <Long>2</Long>
    </Location>
  </Place>
  <Place>
  ...

Element listy został zmieniony naMiejsce za pomocąXmlElement adnotacja, ale jak mogę ustawić nazwę węzła głównego, aby zmienić nazwę„ArrayOfPlace” węzeł?

questionAnswers(3)

yourAnswerToTheQuestion