Загрузка списка и файла с [FromForm] в .NET API не отображаетсяC#

Место общения программистов C#
Ответить
Anonymous
 Загрузка списка и файла с [FromForm] в .NET API не отображается

Сообщение Anonymous »

У меня есть веб-API ASP.NET Core 7 с запросом в контроллере, модель запроса выглядит следующим образом:

Код: Выделить всё

public sealed record CreateInvoiceRequest(
List Descriptions,
IFormFile? Attachment,
List? Taxes,
List Approvers
);
Я использую его в контроллере следующим образом:

Код: Выделить всё

[HttpPost]
[Route("Create")]
public async Task CreateInvoice(
[FromForm] CreateInvoiceRequest request,
CancellationToken cancellationToken)
{
// Code..
}
Но когда я прикрепляю файл в Swagger, данные в списках не отражаются в запросе, кроме List. Это означает, что даже у налогов и утверждающих есть три элемента, отправляемые из Swagger, но в контроллере они отображаются как ноль.
Если я не включу файл в запрос и попытаюсь отправить запрос, тогда все данные списка получены успешно.
Но когда я применил отладчик и попытался просмотреть HttpContext.Request.Form, я ясно увидел эти данные.
Раньше я использовал Swashbuckle, но прочитал, что .NET 9 больше не будет поставлять Swashbuckle.AspNetCore по умолчанию из-за этой проблемы (ДЛЯ СПРАВКИ), и мне посоветовали перейти на NSwag
Сейчас я использую NSwag и столкнулся с той же проблемой

Подробнее здесь: https://stackoverflow.com/questions/783 ... -displayed
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»