是否可以使用XML,其中一个元素具有混合内容,并将混合元素中的文本反序列化为自定义对象而不是string
?
我试过了:
[XmlText(typeof(textType))]
[XmlElement("query", typeof(templateBodyQuery))]
[XmlElement("expand", typeof(expandType))]
[XmlElement("insert", typeof(expandTypeInsert))]
public object[] Items { get; set; }
期望文本项目会被序列化为textType
,但我收到'textType' cannot be used as 'xml text'
错误。
这是我的textType
课程:
public class textType
{
[XmlText]
public string Value { get; set; }
}
答案 0 :(得分:0)
您不能将非原始类型用于XmlText。另外,我不确定我是如何理解xml的结构,因为你不能在单个节点下拥有XmlText和XmlElements。
我认为这是你正在尝试做的事情:
[XmlElement("textType",typeof(textType))]
[XmlElement("query", typeof(templateBodyQuery))]
[XmlElement("expand", typeof(expandType))]
[XmlElement("insert", typeof(expandTypeInsert))]
public object[] Items { get; set; }
反序列化:
<Test>
<textType>example</textType>
<query>...</query>
<expand>...</expand>
</Test>
到Test
数组开头的textType对象Items
,其中Value
为&#34;示例&#34;