1

如果我有一个从通用列表继承的基类,并且派生类需要使用列表条目的自定义名称进行序列化,我该如何输入正确的序列化属性和/或引用基列表?

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>
4

1 回答 1

0

添加XmlRootAttributeCacheEntry

<XmlRootAttribute(ElementName:="customname")>
Public Class CacheEntry

作为一个附带问题,如果从(通过)Cache继承,那么为什么你有一个也是 a 的属性? ListSpecialListEntriesList

于 2012-10-24T15:24:35.623 回答