在 .NET 中将子 XML 元素反序列化为 XML 字符串

Deserialize Child XML Elements as an XML String In .NET

我有这样的输入 XML

<INPUT>
  <A>somevalue<A>
  <B><INPUT><C>somevalue</C></INPUT></B>
</INPUT>

和型号

<XmlRoot("INPUT")>
Public Class Input

  <XmlElement("A")>
  Public a As String

  <XmlElement("B")>
  Public b As String

End Class

如果我尝试使用 XmlSerializer 解析它,我会遇到异常 "There is an error in XML Document",我认为原因是我在 "B" 字段中传递了 XML。我想将 "B" 字段序列化为字符串变量,这可以通过使用 XmlSerializer 实现吗?

我已经将数据类型和 XML 属性更改为 String 和 XMLAnyElement 像这样

<XmlAnyElement("B")>
Public b As XMLElement

并创建一个新的 属性,其中我 return inner xml of XML element

public property bInnerXML as string 

 get
    return b.InnerXml
 end get

end property