XML을 C# 개체로 deserialize하려고합니다. 나는 많은 계획을 시도했지만 내 삶에 대한 위선적 인 말투는 deserialisation을 받아서 choices
을 데리러. ... 아래 코드로 표시문자열 목록 역 직렬화
는 XML ...
@"<?xml version=""1.0"" encoding=""UTF-8""?>
<survey>
<question>
<type>multiple-choice</type>
<text>Question 1</text>
<choices>
<choice>Answer A</choice>
<choice>Answer B</choice>
<choice>Answer C</choice>
</choices>
</question>
<question>
<type>multiple-choice</type>
<text>Question 2</text>
<choices>
<choice>Answer a</choice>
<choice>Answer b</choice>
</choices>
</question>
</survey>
내 C# 모델 ...
[XmlType("question")]
public struct Question
{
public String type;
public String text;
public Choices choices;
};
public class Choices : List<String> { };
[XmlType("survey")]
public class Survey
{
[XmlElement(ElementName = "question")]
public Question[] Questions;
};
Deserialisation ...
using System.Xml.Serialization;
Survey survey;
XmlSerializer serializer = new XmlSerializer(typeof(Survey));
survey = (Survey)serializer.Deserialize(reader);
결과보기 JSON ...
{"Questions":[
{"type":"multiple-choice","text":"Question 1","choices":[]},
{"type":"multiple-choice","text":"Question 2","choices":[]}
]}
을,'대신'공공의 선택의 선택의 ; "(내 대답 참조). 또한'Choices' 클래스는'List'의 자식이되어서는 안됩니다. –
@MarkusSafar, 고마워, 네. 나는'public String [] choicess]뿐만 아니라 그것을 시도했지만 질문을 위해 이상하게 작동 할 수는 없었다. 하지만 그것은 토마스의 대답 – spiderplant0