I am trying to get this result when serializing XML:
<Root Name="blah"> <SomeKey>Eldad</SomeKey> <Element>1</Element> <Element>2</Element> <Element>3</Element> <Element>4</Element> </root>
Or, in other words, I'm trying to contain an array inside the root element along with additional keys.
This is my rude attempt:
[XmlRootAttribute(ElementName="Root", IsNullable=false)] public class RootNode { [XmlAttribute("Name")] public string Name { get; set; } public string SomeKey { get; set; } [XmlArrayItem("Element")] public List<int> Elements { get; set; } }
And my serialization:
string result; XmlSerializer serializer = new XmlSerializer(root.GetType()); StringBuilder sb = new StringBuilder(); using (StringWriter sw = new StringWriter(sb)) { serializer.Serialize(sw, root); result = sw.ToString(); }
However, this is my result (the namespace has been removed for clarity):
<Root> <SomeKey>Eldad</SomeKey> <Elements> <Element>1</Element> <Element>2</Element> <Element>3</Element> </Elements> </Root>
Is there a way to remove the "Elements" part?
source share