2017-07-11 19 views
0

これは簡単だと確信していますが、答えが見つかりません。 XMLファイルのこの部分の正しいClass構​​文は何でしょうか?XML指定された値を持つXMLElementの逆シリアル化

enter image description here

私はここまでだが、何か、しゃれを許し、キーが欠落しているように見えてきました!私は間違った方法でそれに近づいていると感じていますが、要素内の値を持つXMLと一致するサンプルコードを見つけることができません。

 [Serializable, XmlRoot("Keys")] 
    public class Keys 
    { 
     [XmlElement("Key")] 
     public Key Key { get; set; }   
    } 

    [Serializable, XmlRoot("Key")] 
    public class Key 
    { 
     [XmlAttribute("TYPE")] 
     public string Type { get; set; } 

    } 

答えて

1

あなたは番号を取得するXmlTextAttributeを探していると思います。また、キーのコレクションが必要な場合は、コレクションとして宣言する必要があります。

[XmlRoot("Keys")] 
public class Keys 
{ 
    [XmlElement("Key")] 
    public List<Key> Items { get; set; }   
} 

public class Key 
{ 
    [XmlAttribute("TYPE")] 
    public string Type { get; set; } 

    [XmlText] 
    public string Text {get;set;} 
} 

Keysは、あなたの実際のルートオブジェクトでない場合、それを行うための別の方法、あなたはXmlArrayAttributeXmlArrayItemAttribute

public class MyObject 
{ 
    [XmlArray("Keys")] 
    [XmlArrayItem("Key")] 
    public List<Key> Keys {get;set;} 
} 

public class Key 
{ 
    [XmlAttribute("TYPE")] 
    public string Type { get; set; } 

    [XmlText] 
    public string Text {get;set;} 
} 
+0

本当にありがとうございましたのTyを使用することができ、それは完璧と感謝です! –

関連する問題