我对 JSON.Net 库有疑问。通常我有一个这样的 XML 字符串:
<Config>
....
<Name>some name</Name>
....
</Config>
然后我使用 JSON.Net 库将字符串转换为 json 字符串,如下所示:
Congif: {
...
Name: "some name",
...
}
最后,我将此 json 字符串映射到 Config 类的实例:
Config instance = JsonConvert.DeserializeObject<Config>(json);
如果 name 属性是我的 Config 类中的名称数组:
class Config {
....
public string[] Name { get; set; }
....
}
我知道在 json 字符串中,数组的定义如下:
Name: ["some name"],
由于我得到了一个从 XMl 字符串转换而来的 json 字符串,因此我可能在那里有一个或多个 Name 节点。当 XML 中只定义一个名称时,这会给我带来麻烦。我会收到异常抱怨它无法将字符串转换为字符串 []。如果在 XML 文件中定义了多个 Name 节点,则可以。
不确定是否有任何方法或选项可以让 JSON 库在映射看到目标属性时自动将其转换为字符串数组,即使名称只有一个值,名称也是数组类型属性?