Передача массива в контроллер и после в медиатор

Рейтинг: 0Ответов: 0Опубликовано: 28.04.2023

Всем привет. Столкнулся с трудностью. Передаю в контроллер массив объектов:

[HttpPost("[action]")]
public async Task<List<FileImportResult>> CheckDataInSstu(List<CheckDataInSSTURequest> request, CancellationToken cancellationToken)
{
    return await Mediator.Send(request, cancellationToken);
}

Если я в параметрах контроллера указывают что в него приходит список или массив, то у меня подчеркивается весь код начиная с await.

Ошибка такая:

Не удается неявно преобразовать "object" в "List"

(полное имя FileImportResult в ошибке записано немного иначе, но в целом ссылается на него).

Request медиатра:

public class CheckDataInSSTURequest : IRequest<List<FileImportResult>>
{
    public string JsonData { get; set; }
    public string NameJoson { get; set; }
    public bool Encoded { get; set; }
}

И QueryHandler:

internal class CheckDataInSSTUQueryHandler : IRequestHandler<List<CheckDataInSSTURequest>, List<FileImportResult>>
{
    public async Task<List<FileImportResult>> Handle(List<CheckDataInSSTURequest> request, CancellationToken cancellationToken)
    {
        ...
    }
}

В QueryHandler также подсвечивается ошибка на имени класса:

Тип CheckDataInSSTURequest не может быть использован как TRequest в универслальном методе IRequestHandler<>. Нет преобразования неявной ссылку CheckDataInSSTURequest в FileImportResult

Почему так? Eсли убhать List<>, и оставить везде просто CheckDataInSSTURequest, то никаких ошибок нет, но так не годится.

Ответы

Ответов пока нет.