晚上好,
我将尝试将对象解析为 JObject。
This Fiddle 演示了我的问题,代码如下:
public class User
{
public int UserId {get;set;}
public string Username {get;set;}
}
public class Program
{
public static JObject Parameters { set; get; }
public static List<User> Users {get;set;}
public static void Main()
{
Users = new List<User>();
Parameters = new JObject();
Users.Add(new User{UserId=1,Username="First User"});
Users.Add(new User{UserId=2,Username="Second User"});
Parameters.Add("Method", "AddUsers");
Parameters.Add("Users", JArray.FromObject(Users));
Console.WriteLine(Parameters);
}
}
输出:
<块引用>{
"Method": "AddUsers",
"Users": "[{\"UserId\":1,\"Username\":\"First User\"},{\"UserId\":2,\"Username\":\"Second User\"}]"
}
这是我的真实问题的简化对象结构。它逃脱了我的 Json,这使我指出 WebRequest 由于无效的请求正文而失败。
我该如何正确序列化我的对象?
最好的问候 丹尼尔
答案 0 :(得分:0)
我在写完问题后找到了答案。
我通过添加这样的参数解决了这个问题
Parameters.Add("Users", JProperty.Parse(JsonConvert.SerializeObject(Users)));