我想通过将方法的返回值格式化为json来生成json。
以下是json:的格式
{
"Users": [
{
"Id1" : user.Id1,
"Id2" : user.Id2
},
{
"Id1" : user.Id1,
"Id2" : user.Id2
}]
}
应该返回JToken:的方法
public static JToken SaveUsers(User user)
{
context.asp_User_Update(user.Id1, user.Id2 //omitted some arguments);
return user.Id1 + user.Id2;
}
我想要这个方法,不管它将返回什么id来生成类似于上面给出的格式的json。
我试过这个代码:
JToken json = JObject(
JProperty("Users", new JArray(new JObject (new
JProperty("Id1", user.Id1),
JProperty("Id2", user.Id2))))
);
我知道我需要使用一个循环来动态生成user.Id1
和user.Id2
的JProperty。
假设users
是一个用户列表,您应该能够做到这一点:
JArray array = new JArray();
foreach (User user in users)
{
JObject userObj = new JObject();
userObj.Add("Id1", user.Id1);
userObj.Add("Id2", user.Id2);
array.Add(userObj);
}
JObject result = new JObject();
result.Add("Users", array);
Fiddle:https://dotnetfiddle.net/n7UDae