【发布时间】:2019-08-06 05:54:56
【问题描述】:
我想将两个参数 id 和 page 传递给操作。但是当我使用这段代码时
[HttpGet]
[Route("Actor/{id:int}/{page:int}")]
public async Task<IActionResult> Actor(int id, int page, CancellationToken cancellationToken )
{
var data = await _videoService.GetActorVideos(id, page, cancellationToken);
return View(data);
}
程序启动时出现路由错误。它永远不会到达_videoService 行,并且不会执行Actor 操作。
并告诉我这个错误
索引(从零开始)必须大于或等于零且小于参数列表的大小。
【问题讨论】:
-
这不是发生错误的代码。
-
@SᴇM 如果它工作正常,我不会问问题
-
发布
GetActorVideos代码。 -
@FarhadZamani 删除对
_videService.GetActorVideos(...)的调用并确认id和page未设置为您期望的值。如果是这种情况,请使用“如何”调用 API 来更新您的问题。如另一条评论所述,您发布的代码不会引发您发布的错误。_videoService调用可能会引发它,但我们需要删除调用来证明这一点。 -
@FarhadZamani 如前所述,错误不在您发布的代码中。您需要一个调试器来单步调试您的代码以确定错误发生的位置(可能在
startup.cs中)。然后将该代码添加到您的问题中。就目前而言,我们无法查看错误发生的位置并提供解决方案。
标签: c# asp.net-core routes