/ / Примушування певного формату серіалізації XML-об'єкта - c #, xml

Примушування певного формату серіалізації XML-об'єкта - c #, xml

Я використовую серіалізацію C # на одному з моїх об'єктів:

   StringWriter outStream = new StringWriter();
XmlSerializer s = new XmlSerializer(obj.GetType());
XmlSerializerNamespaces ns = new XmlSerializerNamespaces();
s.Serialize(outStream, obj, ns);
string xml = outStream.ToString();

Об'єктом є:

public class Points
{
[System.Xml.Serialization.XmlAttribute]
public string Type;
public double Number;
}

Мій Points клас використовується іншою програмою, очікуючи її у формі:

 <Points Type="Credit">123</Points>

Я намагався працювати, якщо я можу використовувати будь-які атрибути, щоб застосувати цей формат?

Дякую

Відповіді:

1 для відповіді № 1

Я думаю, що вам потрібно використовувати [System.Xml.Serialization.XmlText] атрибут у полі Номер, як і у випадку з XmlAttribute на тип:

public class Points
{
[System.Xml.Serialization.XmlAttribute]
public string Type;
[System.Xml.Serialization.XmlText]
public double Number;
}