У меня небольшая проблема, когда я построил конечную точку службы WebAPI, которая принимает объект массива. Я не уверен, правильно ли построены мои классы DTO или что я что-то упускаю, но объект пуст, когда я публикую как XML. Я интегрировал с Swagger и использую пример структуры для публикации данных. См. Ниже код:
Модели:
public class Student
{
public string Name { get; set; }
public int Age { get; set; }
public Note[] Notes { get; set; }
}
public class Note
{
public string Content { get; set; }
public DateTime CreatedDate { get; set; } = DateTime.Now;
}
Контроллер:
[HttpPost]
public IHttpActionResult AddStudentRecord(Student[] student)
{
return Json(student);
}
Объект запроса:
<?xml version="1.0"?>
<Students>
<Student>
<Name>John Doe</Name>
<Age>13</Age>
<Notes>
<Note>
<Content>Some Notes</Content>
<CreatedDate>1970-01-01T00:00:00.001Z</CreatedDate>
</Note>
</Notes>
</Student>
</Students>
Какой правильный путь к настроить мой объект таким образом, чтобы он обслуживал как JSON, так и XML без этой проблемы. Проблема, если я оберну список в другом классе, например под названием Notes, теперь он испортит структуру JSON.