我通过外部服务(这是我无法控制的)的HTTP-POST接收json字符串。json中的一个键是params:{...},
我需要将这个json映射到一个类MyClass
。如果不是因为params
是c#中的关键字,这将是简单的。
我试过使用Newtonsofts json。. NET(版本7.0.0)库,并在MyClass
中具有以下内容:
[JsonProperty(PropertyName = "params")]
public TrustlyNotifParams Parameters { get; set;}
但Parameters
最终为null
。张贴的json有一个嵌套的参数值,我在日志中看到了这一点。
层次结构中Parameters
以上的所有内容都可以很好地解析。我哪里做错了?
您可以(谨慎地)将关键字作为属性或变量的名称,您只需要告诉编译器将其视为这样。这与您告诉它将字符串视为文字而不是使用转义序列的方式相同:
public TrustlyNotifParams @params { get; set; }
@
符号告诉编译器将以下内容视为变量、字段、属性名等。