在Xamarin中使用Gson进行字符串转换的通用列表

问题描述 投票:0回答:2

我是Xamarin的新手,我试图将我的泛型类型列表转换为单个字符串。我可以使用下面的代码轻松地在Android中执行此任务。

Gson gson = new Gson();
    Type collectionType = new TypeToken<ArrayList<Response_bean>>() {}.getType();
    JsonElement element = gson.toJsonTree(response_data, collectionType);
    JsonArray jsonArray = element.getAsJsonArray();
    String strjsonarray = jsonArray.toString();

但我无法在Xamarin中找到它的替代品。请提前帮助,谢谢。

xamarin.ios
2个回答
0
投票

我想你可以使用json.net

Product product = new Product();
product.Name = "Apple";
product.Expiry = new DateTime(2008, 12, 28);
product.Sizes = new string[] { "Small" };

string json = JsonConvert.SerializeObject(product);
// {
//   "Name": "Apple",
//   "Expiry": "2008-12-28T00:00:00",
//   "Sizes": [
//     "Small"
//   ]
// }

0
投票

正如Alessandro Caliaro所说,json.net可以帮助你。

List<Product> list = new List<Product>();

Product product = new Product();
product.Name = "Apple";
product.Expiry = new DateTime(2008, 12, 28);
product.Sizes = new string[] { "Small" };

Product product2 = new Product();
product2.Name = "Banana";
product2.Expiry = new DateTime(2010, 12, 28);
product2.Sizes = new string[] { "Big" };

Product product3 = new Product();
product3.Name = "Pear";
product3.Expiry = new DateTime(2012, 12, 28);
product3.Sizes = new string[] { "Huge" };

list.Add(product);
list.Add(product2);
list.Add(product3);

string json = JsonConvert.SerializeObject(list);

Output

[
 {"Name":"Apple","Expiry":"2008-12-28T00:00:00","Sizes":["Small"]},
 {"Name":"Banana","Expiry":"2010-12-28T00:00:00","Sizes":["Big"]},
 {"Name":"Pear","Expiry":"2012-12-28T00:00:00","Sizes":["Huge"]}
]
© www.soinside.com 2019 - 2024. All rights reserved.