2012-08-27 2 views
3

Monotouch-JSON에서 IEnumerable의 JSON 문자열을 생성하는 논리적 인 방법이 있는지 궁금합니다. 나는 System.Json -Namespace를 찾았지만, 항상 KeyValuePair이 필요하고 나는이 오버로드를 어떻게 사용하는지 이해하지 못한다.Monochrome에서 IEnumerable <T>을 JSON으로 간단하게 변환

일을 명확하게하기 : WebRequest를 JSON에서 .NET으로 변환하고 싶지 않습니다. ASP.NET에서 JsonResult-Conversion과 같은 다른 방법을 원합니다.

var list = new List<string>() { "value1", "value2" }; 
var result = new System.Json.JsonArray(list); 

result 그래야하는 것은

["value1","value2"] 

답변

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()); 
3

(호환성과 사용 편의성 모두를위한) 최선의 선택 같은 것이 아마 Newtonsoft's JSON.NET 라이브러리로 이동하는 것입니다 : 뭔가처럼 나의 마음에 드는 것입니다.

+0

감사합니다. @ L.B에 대한 제 코멘트를보십시오. – sprinter252

4

Json.Net는 그것은 특히 깔끔한 아니다

var list = new List<string>() { "value1", "value2" }; 
var result = JsonConvert.SerializeObject(list); 
+0

Json.Net에 iOS 기기에 문제가 있다는 소식을 들었습니다. 너 또는 @Justin은 그것에 대해 뭔가 알고 있니? – sprinter252

+1

@ sprinter252 http://weblogs.thinktecture.com/cweyer/ –

+0

하지만 iOS에 대해 무엇이라고 말합니까? 이 진술은 이식 가능한가? 다른 사람이 iOS에서 사용하는 경우 나에게도 좋을지 만 다른 스레드에서는 문제에 관해 읽습니다. – sprinter252

관련 문제