Я використовую серіалізацію 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;
}