簡體   English   中英

如何序列化屬性

[英]How to serialize attribute

我試圖反序列化此代碼

 <request>
  <employee id="40407">Test User</employee>
 </request>

我創建了一個類:

public class Request
{
    public string employee { get; set; }

    [XmlAttribute("employee/id")]
    public string employeeId { get; set; }
}

沒有屬性一切正常,但我也需要來自屬性“ id ”的數據。 一旦我把[XmlAttribute("employee/id")]它不想工作。 我做錯了什么?

我認為您需要以下類來反序列化該xml:

[XmlRoot("request")]
public class Request
{
    [XmlElement("employee")]
    public Employee Employee { get; set; }
}

[XmlRoot("employee")]
public class Employee
{
    [XmlText]
    public string Name { get; set; }

    [XmlAttribute("id")]
    public string EmployeeId { get; set; }
}
public class empl
{
     [XmlText]
     public string name { get; set; }
     [XmlAttribute]
     public int id { get; set; }
 }

 public class request
 {
      public empl employee { get; set; }
 }


 public Test()
 {
    XmlSerializer ser = new XmlSerializer(typeof(request));
    MemoryStream mem = new MemoryStream();
    ser.Serialize(mem , new request { employee = new empl { name="ff", id=6}});
    string dec = UTF8Encoding.UTF8.GetString(mem.ToArray());
 }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM