Я создаю веб-API с использованием Visual Studio 2015. Мой XML-запрос содержит дочерние узлы с тем же именем тега.
<TestData>
<TestChild>
<input>
<name ="Test1"/>
<value="DUMMY VALUE1"/>
</input>
<input>
<name ="Test1"/>
<value="DUMMY VALUE1"/>
</input>
<input>
<name ="Test1"/>
<value="DUMMY VALUE1"/>
</input>
</TestChild>
</TestData>
Я добавил атрибут XRoot и XElement в .net c #объект как показано ниже:
[XmlRoot]
public class TestData
{
[XmlElement]
public TestChild TestChild { get; set; }
}
public class TestChild
{
[XmlElement]
public input[] input { get; set; }
}
public class input
{
[XmlElement]
public string name { get; set; }
[XmlElement]
public string value { get; set; }
}
Но пример xml, сгенерированный с помощью приведенного выше кода, выглядит немного иначе. Он добавляет родительский тег input , а затем в него добавляются несколько тегов input. Мне нужно, чтобы xml выглядел так же, как и тот, что был указан выше.
<TestData xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<TestChild>
<input>
<input>
<name>sample string 1</name>
<value>sample string 2</value>
</input>
<input>
<name>sample string 1</name>
<value>sample string 2</value>
</input>
</input>
</TestChild>
</TestData>
Я пытался установить
GlobalConfiguration.Configuration.Formatters.XmlFormatter.UseXmlSerializer = true;
, но это тоже не помогает. Я новичок в Web API, и любая помощь / предложение будут оценены.