2013-06-20 81 views
1

我開始瞭解.NET框架中的serialization,但無法找到您應該對返回自定義集合或自定義類對象的屬性執行的操作。在下面的例子中說,我的Items屬性返回自定義集合。我是否還需要爲該類添加「datacontract」屬性?序列化支持類VB.NET

如果任何屬性返回一個自定義類的類型,也要稍微改變它,那麼你必須標記所有這些類與datacontract(和datamembe r,如果他們有屬性)?

<DataContract()> Public NotInheritable Class MyMainClass 
Private pFilters As MyCustomClass 

<DataMember()> Public ReadOnly Property Items As MyCustomCollection 
    Get 
     Return pFilters 
    End Get 
End Property 

Public Class MyCustomCollection 
    'Stuff in here 
End Class 
End Class 

回答

1

「列表」和「其他」之間通常存在很大的分歧。通常通過IList(-of-T,可選)和IEnumerable(-of-T,可選)API對列表中的項目進行循環處理。所以不,列表通常不需要特殊的標記只要他們顯然是列表。然而,域實體(「其他」)通常需要被理解 - 意思是「是的,它會需要屬性」。