Objekt in XML serialisieren INNERHALB eines übergeordneten Elements

Ich habe ein WPF C # -Programm und muss irgendwann Objekte in XML serialisieren. An anderen Stellen habe ich Folgendes verwendet:

TextWriter writer = new StreamWriter(xmlFilePath);
XmlSerializer xmlSerializer = new XmlSerializer(typeof(MYOBJECT_TYPE));

try
{
    xmlSerializer.Serialize(writer, MYOBJECT);

}
catch (Exception ex)
{
    MessageBox.Show("Exception occured while writing to Xml" + ex.Message);
}
finally
{
    writer.Close();
}

Das ist fantastisch, aber das bedeutet, dass ich für jedes Objekt, das ich serialisieren möchte, eine andere XML-Datei haben muss. Wie verwende ich diese Methode (mit den geringsten Änderungen), um das Objekt in das XML @ zu serialisiereWITHIN ein übergeordnetes Element? Auf diese Weise kann ich, wenn ich das Objekt später deserialisieren möchte, einfach das gewünschte Element finden und alles in diesem Element deserialisieren.

Wie gewünscht, hier istCreateDefaultXml();:

static void CreateDefaultXml()
{
    XmlDocument doc = new XmlDocument();
    doc.LoadXml("<StoredObjects></StoredObjects>");
    XmlNode root = doc.DocumentElement;
    try
    {
        doc.Save(xmlFilePath);
    }
    catch (Exception ex)
    {
        Console.WriteLine("Exception occured while creating Xml" + ex.InnerException);
    }
}

BEARBEITEN

Derzeit ist dies das, was ich habe (aber es löst eine Ausnahme ausThere was an error generating the XML document.)

if (!File.Exists(xmlFilePath))
    CreateDefaultXml();

XDocument doc = XDocument.Load(xmlFilePath);
var element = doc.Descendants("Object").Where(x => x.Attribute("Name").Value.Equals("objectName")).SingleOrDefault();

if (element == null)
{
    element = new XElement("Object", new XAttribute("Name", objectName));
    doc.Element("StoredObjects").Add(element);
}

XmlWriter writer = element.CreateWriter();
XmlSerializer xmlSerializer = new XmlSerializer(typeof(MYOBJECT_TYPE));

try
{
    xmlSerializer.Serialize(writer, MYOBJECT);

}
catch (Exception ex)
{
    MessageBox.Show("Exception occured while writing to Xml: " + ex.Message);
}
finally
{
    writer.Close();
    doc.Save(xmlFilePath);
}

Antworten auf die Frage(2)

Ihre Antwort auf die Frage