gpt4 book ai didi

xml - 如何构建类以在同一 XML 节点中输出属性和简单字符串

转载 作者:数据小太阳 更新时间:2023-10-29 02:11:51 27 4
gpt4 key购买 nike

给定 XML:

<?xml version="1.0" encoding="UTF-8"?>
<Response Version="3">
<Status StatusCode="Test">Some Value</Status>
</Response>

构建 Status 类的正确方法是什么,以便 System.Xml.Serialization.XmlSerializer将给定的 XML 正确解析为状态类?

我目前从第三方收到这种 XML 结构,他们不可能更改格式。

我对响应类的尝试是这样的:

<XmlRoot(ElementName:="Response")> Public Class clsResponse
<XmlAttribute(AttributeName:="Version"), DefaultValue(0)> Public Property intVersion() As Integer
<XmlElement(ElementName:="Status", Type:=GetType(clsStatus), Order:=2)> Public Property strStatus() As clsStatus
End Class

状态等级:

<XmlRoot(ElementName:="Status")> Public Class clsStatus
<XmlAttribute(AttributeName:="StatusCode")> Public Property strStatusCode() As String
<XmlElement(ElementName:="Status", Order:=1)> Public Property strStatus() As String
End Class

不幸的是,这导致了 strStatus总是空白。我在网上找到的所有示例在 <Status> 中都没有字符串值。节点,总有子节点组成相当于<Status>的内容节点。

注意:我已经从 XML 和代码中删除了一堆内容,试图只包含相关部分。如果我剪掉了太多,请告诉我,我会提供任何其他需要的信息。

最佳答案

您需要为 Status 元素添加另一个类,因为它包含多个成员。

Public Class Response

<XmlAttribute> Public Version As Integer
Public Status As Status

End Class

Public Class Status

<XmlAttribute> Public StatusCode As String
<XmlText> Public Text As String

End Class

您可以使用属性以及根据需要重命名成员,并使用 xml 属性中的输出名称装饰它们。

关于xml - 如何构建类以在同一 XML 节点中输出属性和简单字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49761030/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com