将JSON序列化为动态时,属性名称中存在非法字符



我正试图通过使用动态类型来反序列化JSON,该JSON的某些属性名称中包含短划线(-)字符:

string json = MyWebClient.DownloadString("http://api.crossref.org/works/10.1093/brain/75.2.187");
dynamic result = JsonConvert.DeserializeObject<dynamic>(json);
string title = result.message.title[0];
string journal = result.message.container-title[0];

由于使用了非法字符,我无法获取"容器标题"值。我不想简单地使用Replace()来删除短划线字符。有办法吗?

由于message也是JObject,您可以像字典一样访问其属性

result.message["container-title"]

相关内容

  • 没有找到相关文章

最新更新