如果我有一个继承自泛型列表的基类,并且派生类需要使用列表条目的自定义名称进行序列化,如何输入正确的serializartion属性和/或引用基本列表?< / p>
Public MustInherit Class SpecialList(Of T)
Inherits List(Of T)
'Other methods here
End Class
Public Class Cache
Inherits SpecialList(Of CacheEntry)
<XmlElementAttribute("CustomName")> _
Public Property Entries() As List(Of CacheEntry)
Get
Return ???
End Get
Set(value As List(Of CacheEntry))
??? = value
End Set
End Property
End Class
如果没有覆盖基类方法,编写自定义序列化或实现IXmlSerializable,这实际上是否可行?
我希望得到这样的输出XML:
<cache>
<customname></customname>
<customname></customname>
</cache>
答案 0 :(得分:0)
将XmlRootAttribute
添加到CacheEntry
:
<XmlRootAttribute(ElementName:="customname")>
Public Class CacheEntry
作为一个附带问题,如果Cache
继承自List
(通过SpecialList
),那么为什么你的Entries
属性也是List
1}?