如何解析 .NET 中联合和列表类型的值?
我有一个 XML 架构,其中包含使用
和
的数据类型。下面是摘录:
<xs:simpleType name="mixeduniontype">
<xs:union memberTypes="xs:boolean xs:int xs:double xs:string"/>
</xs:simpleType>
<xs:simpleType name="valuelist">
<xs:list itemType="xs:double"/>
</xs:simpleType>
下面是一个示例 XML 片段:
<value>42</value>
<value>hello</value>
<values>1 2 3.2 5.6</values>
上面的两个
元素是联合,下面的
元素是一个列表。
我的问题是,如何解析 .NET 中的
和
元素?
如何检查联合元素中的值具有哪种数据类型?
如何提取列表元素中的元素并将它们转换为 C# 列表?
System.XML 中是否内置支持这种解析,还是我需要自己编写解析代码?
I have an XML Schema that includes data types that use <xs:union>
and <xs:list>
. Here is an extract:
<xs:simpleType name="mixeduniontype">
<xs:union memberTypes="xs:boolean xs:int xs:double xs:string"/>
</xs:simpleType>
<xs:simpleType name="valuelist">
<xs:list itemType="xs:double"/>
</xs:simpleType>
And here is a sample XML fragment:
<value>42</value>
<value>hello</value>
<values>1 2 3.2 5.6</values>
The two upper <value>
elements are unions, and the lower <values>
element is a list.
My question is, how do I parse an <xs:union>
and <xs:list>
elements in .NET?
How do I check which data type the value in a union element has?
How do I extract the elements in the a list element and convert them to a C# list?
Is there built-in support in System.XML for this kind of parsing, or do I need to write the parsing code myself?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
希望有更好的答案,但
我认为你需要自己写。
如果您想要一个通用解析器来处理
xs:list
和xs:union
的所有可能实例,那么您将遇到一个更困难的问题,但对于您的特定架构来说,它相当简单。Hoping for a better answer but,
I think you need to write it yourself.
If you want a generic parser for all possible instances of
xs:list
andxs:union
you have a more difficult problem but for your specific schema, its fairly straight forward.