2012-01-12 77 views
0

當我序列化以下類時,ContentPageId XML元素從結果XML文件中缺失。DataContractSerializer未序列化一個屬性

[CollectionDataContract(ItemName = "Widget")] 
public sealed class StructurePage : List<Widget>, IEquatable<StructurePage> 
{ 
    [DataMember] 
    public int ContentPageId 
    { 
     get; 
     set; 
    } 

    public StructurePage(){} 

    public StructurePage(int pageId) 
    { 
     this.ContentPageId = pageId; 
    } 

    public bool Equals(StructurePage other) 
    { 
     return this.ContentPageId.Equals(other.ContentPageId); 
    } 
} 
  1. 爲什麼序列化何時以及如何將它作爲XML元素的屬性跳過?
  2. 是否有可能將它作爲XML屬性序列化到StructurePage元素中?正在尋找這個網絡,但可以找到它的任何信息,顯然與XmlSerializer有XmlAttributeAttribute屬性,但沒有DataContractSerializer這樣的事情。

回答