Я получаю следующую ошибку во время выполнения при попытке достичь любой из моих конечных точек API, которые построены, как показано в коде ниже:
ArgumentException: Invalid type parameter
'Microsoft.AspNetCore.Mvc.JsonResult' specified for 'ActionResult<T>'.
Этот код функционировал, как и ожидалось, в моем приложении в .NET Core 2.1. После обновления до .NET Core 2.2 это сломалось.
Вот код одной из моих конечных точек в контроллере.
[HttpGet]
public async Task<ActionResult<JsonResult>> Get()
{
try
{
MongoConnector mongo = new
MongoConnector(_configService.GetMongoConnectionString());
List<BsonDocument> queues = await mongo.AggregateQueues(
(aggregator) => aggregator
.Match(CommonAggregation.SinceYesterday)
.Sort(CommonAggregation.SortByDate)
.Group(QueueAggregators.GroupQueuesByMessagingName)
);
List<QueueHealth> queueHealth = await MongoConnector.DeserializeList<QueueHealth>(queues);
JsonResult result = new JsonResult(queueHealth);
result.Value = queueHealth;
result.ContentType = "application/json";
result.StatusCode = 200;
return result;
}
catch (Exception ex)
{
logger.Error(ex, "An exception was thrown within /api/MessageQueue");
return new StatusCodeResult(InternalServerError);
}
}
Кто-нибудь знает, что изменилось между 2.1 и 2.2, что могло бы вызвать это? Я даже не могу найти никого, кто бы упоминал аналогичную проблему или документацию по изменению в Интернете.