DataContractJsonserializer를 사용하여 변수 유형 JSON 배열을 사로화합니다

StackOverflow https://stackoverflow.com/questions/1215479

  •  06-07-2019
  •  | 
  •  

문제

이 형식의 JSON 문자열이 있습니다.

string jsonStr = "[\"A\", [\"Martini\", \"alovell\"],[\"Martin\", \"lovell\"]]"

다음 코드 스 니펫을 사용하여 C# .NET Deserializer DataContractJsonserializer를 사용하여 JSON을 Desorialize하려고합니다.

MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(jsonStr));
DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof<X>);
X data = (X)serializer.ReadObject(ms);

이제 JSON 배열은 변수 유형의 배열이므로 객체 X의 유형이 어떤 유형인지 모릅니다.

내 끈이 있다면

jsonStr = "[[\"Martini\", \"alovell\"],[\"Martin\", \"lovell\"]]"

나는 이것을 사용할 수있다 :

X = List<List<String>> 

그리고 그것은 나를 위해 효과가있을 것입니다. 가변 유형 JSON 배열을 실질화 할 수있는 방법이 있는지 궁금합니다.

도움이 되었습니까?

해결책

당신은 사용할 수 있습니다 json.net 이것을하기 위해.

JArray a = JArray.Parse(jsonStr);

Jarray는 JSON에 따라 문자열 또는 중첩 Jarray를 포함합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top