У меня есть проект ядра веб-API, в котором если я отправлю только параметр списка, API получит значения, однако, если я отправлю оба параметра, которые ищет контроллер, оба параметра будут отображаться как null Мой контроллер:
[HttpPost]
[Route("/jobApi/RunBD")]
public int RunBDReport([FromBody]int month, [FromBody] IEnumerable<ClientModel> clients)
{
billingDetailCycle objBillDetail = new billingDetailCycle();
if (ModelState.IsValid)
{
return objBillDetail.Run(clients.ToList(), month);
}
else
{
return 500;
}
}
ClientModel:
public class ClientModel
{
public string BlockOfBus { get; set; }
public string ClientId { get; set; }
public string Location { get; set; }
public string SuppressSsn { get; set; }
}
Отправляемый мной запрос:
{"month":7,
"ClientModel":[{"blockOfBus":"XXX",
"clientId":"123456",
"location":"",
"suppressSsn":"N"}]}
Это приводит к тому, что оба параметра воспринимаются контроллером как нулевые. , однако, если я отправлю свой запрос следующим образом:
[{"blockOfBus":"XXX",
"clientId":"123456",
"location":"",
"suppressSsn":"N"}]
Тогда контроллер сможет увидеть объект списка, который я отправляю (однако он, очевидно, возвращает 500, поскольку модель недействительна)