我想知道是否有一种逻辑方法可以从Monotouch-JSON中的任何IEnumerable
生成JSON字符串。我找到了System.Json
- 命名空间,但似乎总是需要KeyValuePair
,我不明白如何使用这个重载。
要说清楚:我不想将某些WebRequest从JSON转换为.NET中的某些内容。我想要另一种方式,如ASP.NET中的JsonResult-Conversion。我最喜欢的是:
var list = new List<string>() { "value1", "value2" };
var result = new System.Json.JsonArray(list);
因此result
就像
["value1","value2"]
答案 0 :(得分:4)
Json.Net会提供您期望的输出
var list = new List<string>() { "value1", "value2" };
var result = JsonConvert.SerializeObject(list);
答案 1 :(得分:4)
它不是特别整洁,但这有效:
var list = new List<string>() { "value1", "value2" };
var result = new System.Json.JsonArray(list.Select(x => (System.Json.JsonValue)x));
Console.WriteLine( result.ToString() );
答案 2 :(得分:3)
最佳选择(兼容性和易用性)可能与Newtonsoft's JSON.NET库配合使用。