Scrap the xsd.exe
and generate your model:
[XmlRoot("Fields")]
public class MyViewModel
{
[XmlElement("Field")]
public Field[] Fields { get; set; }
}
public class Field
{
[XmlAttribute("name")]
public string Name { get; set; }
[XmlText]
public string Value { get; set; }
}
and then serialize it:
var model = new MyViewModel
{
Fields = new[]
{
new Field { Name = "john", Value = "lorem" },
new Field { Name = "smith", Value = "ipsum" },
}
};
var serializer = new XmlSerializer(typeof(MyViewModel));
serializer.Serialize(Console.Out, model);