2017-04-01 9 views
0

:역 직렬화 된 XML UWP

<?xml version="1.0"?> 
    <e:propertyset xmlns:e="urn:schemas-upnp-org:event-1-0"> 
    <e:property> 
     <LastChange> 
     <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"> 
      <InstanceID val="0"> 
      <RoomVolumes val="uuid:29e07ad9-224f-4160-a2bc-61d17845182a=100"/> 
      <Volume channel="Master" val="100"/> 
      <Mute channel="Master" val="0"/> 
      <RoomMutes val="uuid:29e07ad9-224f-4160-a2bc-61d17845182a=0"/> 
      </InstanceID> 
     </Event> 
     </LastChange> 
    </e:property> 
    </e:propertyset> 

그리고 여기 내 클래스입니다 : 나는 XML - 데이터 'LastChange'을 역 직렬화 할 때 이제

[XmlRoot("propertyset", Namespace = "urn:schemas-upnp-org:event-1-0")] 
public class EventPropertySet 
{ 
    [XmlElement("property")] 
    public List<EventProperty> Properties { get; set; } 
} 

public class EventProperty 
{ 
    [XmlElement("LastChange")] 
    public string LastChange { get; set; } 

    [XmlElement("SinkProtocolInfo")] 
    public string SinkProtocolInfo { get; set; } 

    [XmlElement("IndexerStatus")] 
    public string IndexerStatus { get; set; } 

    [XmlElement("SystemUpdateID")] 
    public string SystemUpdateID { get; set; } 
} 

입니다 항상 'null'.() 메소드를 자식 요소가있는 요소를 호출 할 수 없습니다 ReadElementContentAs :

public class EventProperty 
{ 
    [XmlElement("LastChange", Namespae = "")] 
    public string LastChange { get; set; } 

    [XmlElement("SinkProtocolInfo", Namespae = "")] 
    public string SinkProtocolInfo { get; set; } 

    [XmlElement("IndexerStatus", Namespae = "")] 
    public string IndexerStatus { get; set; } 

    [XmlElement("SystemUpdateID", Namespae = "")] 
    public string SystemUpdateID { get; set; } 
} 

역 직렬화에서 예외가 발생합니다 : XmlException 내가 지금처럼 클래스 'EventProperty'을 수정 . 1 호선, 103 번 위치.

내가해야 할 아이디어가 있습니까?

답변

0

죄송합니다. 문제가 발생했습니다. 이것이 내가 WebUtility.HtmlDecode으로 "DeParse"을하지 않는 경우 이제

<LastChange>&lt;Event xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/RCS/&quot;&gt;&lt;InstanceID val=&quot;0&quot;&gt;&lt;RoomVolumes val=&quot;uuid:29e07ad9-224f-4160-a2bc-61d17845182a=100&quot;/&gt;&lt;Volume channel=&quot;Master&quot; val=&quot;100&quot;/&gt;&lt;Mute channel=&quot;Master&quot; val=&quot;0&quot;/&gt;&lt;RoomMutes val=&quot;uuid:29e07ad9-224f-4160-a2bc-61d17845182a=0&quot;/&gt;&lt;/InstanceID&gt;&lt;/Event&gt;</LastChange> 

을 :)처럼 "LastChange"뒤에 데이터 (normaly 구문 분석 된 XML-구조, everythings 잘 작동합니다.