代码之家  ›  专栏  ›  技术社区  ›  CaffGeek

Xml序列化属性和文本

  •  0
  • CaffGeek  · 技术社区  · 15 年前

    <Division ID="123">Division Name</Division> 
    

    但是当我创建类为

    public class Division
    {
        [XmlAttribute]
        public string Id { get; set; }
    
        [XmlText]
        public string Description { get; set; }
    }
    

    我明白了

    <Division>Division Name</Division> 
    

    我该怎么做?

    1 回复  |  直到 15 年前
        1
  •  1
  •   Nix    15 年前

    Works on my machine


    Division d = new Division()
    {
        Id = "1",
        Description = "Description"
    };
    
    FileStream fs = new FileStream("test.txt", FileMode.Create);
    TextWriter writer = new StreamWriter(fs, new UTF8Encoding());
    
    
    XmlSerializer xs = new XmlSerializer(typeof(Division));
    xs.Serialize(writer, d);
    writer.Close();
    

    <?xml version="1.0" encoding="utf-8"?>
    <Division xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"     
           xmlns:xsd="http://www.w3.org/2001/XMLSchema" Id="1">Description</Division>