我有一个与之交互的库,我完全无法控制。对象使用如下属性名称格式化:
{"my property": "my value"}
和
{"my-property": "my value"}
使用 json.net,我可以向类中的属性添加一个表示每条消息的属性,以将这些属性名称映射到我的类中的属性:
public class MyClass
{
[JsonProperty(PropertyName="my-prop")]
public String MyProperty {get; set;}
}
这很好,但问题是我必须在大量课程中使用这些“魔术字符串”,我真的很鄙视魔术字符串。
底线:
有没有办法将所有这些属性更改为 C# 可读字符串,以便让 json.net 自动映射这些属性?
IE:
{"my property": "my value"}
应改为:
{"MyProperty": "my value"}
在反序列化期间,它将将该值流向 MyClass 中的 MyProperty 成员,而无需使用硬编码字符串值注释该属性。