gpt4 book ai didi

c# - 如何获得这个 XmlAttribute

转载 作者:行者123 更新时间:2023-11-30 21:21:22 25 4
gpt4 key购买 nike

从 MusicBrainz REST 服务,我得到以下 xml:

<artist-list offset="0" count="59">
<artist type="Person" id="xxxxx" ext:score="100">
...

使用 WCF 和 XmlSerializationFormat,我能够获取类型和 ID 属性...但是如何获取“ext:score”属性?

这个有效:

  public class Artist
{
[XmlAttribute("id")]
public string ID { get; set; }

[XmlAttribute("type")]
public ArtistType Type { get; set; }

但这不是:

[XmlAttribute("ext:score")]
public string Score { get; set; }

它产生一个序列化异常。我也试过只使用“分数”,但它不起作用。

有什么帮助吗?

最佳答案

该属性名为“score”,位于“ext”引用的命名空间中,这可能是一个 xml 命名空间别名。

因此找到“ext”映射到的内容(查找 xmlns),并添加:

[XmlAttribute("score", Namespace="http://example.org/ext-9.1#")]
public string Score { get; set; }

编辑;找到了 here ;参见 xmlns:ext="http://example.org/ext-9.1#"。另请注意,主要对象似乎在 xmlns="http://musicbrainz.org/ns/mmd-1.0#" 中,您可能需要在根/对象级别考虑。

关于c# - 如何获得这个 XmlAttribute,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2736296/

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