【发布时间】:2021-02-13 12:56:37
【问题描述】:
我知道这可能是一个非常微不足道的问题,但我似乎无法在网上找到答案..
假设我有一个下面的 JSON
{"userId" : "myUser","sites" : ["site1", "site2"] }
我想将它解析为 C# 对象 User 但 RestSharp 解析器无法正确解析数组。
我尝试如下实现sites:
public string[] sites = new string[5];
public List<string> sites;
但似乎没有任何效果。
为了反序列化我使用
JsonDeserializer deserial = new JsonDeserializer();
User newUser = new User();
newUser = deserial.Deserialize<user>(response); --> 响应是一个
IRestResponse 对象。
代码正确解析了userId 等简单字符串,但在处理数组时遇到了困难……
我做错了什么? RestSharp 不是合适的工具吗?
如果是 Json 中的对象数组呢
{"userImgs" : {"small": "https://myImage.co.uk/small", "large" : "https://myImage.co.uk/large"}}
我是否可以只拥有一个对象作为属性的对象,如果我按如下方式实现我的类,解析器会处理吗?
Class User{
string userId;
UserImages userImg = new UserImages();
谢谢
【问题讨论】:
-
我认为您基本上走在正确的轨道上,而且很可能是属性名称(站点)与 JSON 中的实际内容不匹配。您可以检查“IRestResponse”并查看实际的 json 是什么并包含它吗?
-
@DanielJamesBryars - 我基本上是使用 Postman 从 Json 复制粘贴我的属性。而且我还检查了名称以确保它们相同并且它们是......我很确定
-
希望对您有所帮助:comment
标签: c# json restsharp jsonparser