Asp.net core ASP.NET核心Web API-含糊不清的MatchException:请求匹配多个端点

Asp.net core ASP.NET核心Web API-含糊不清的MatchException:请求匹配多个端点,asp.net-core,asp.net-web-api,Asp.net Core,Asp.net Web Api,我一直在研究这个问题,但仍然找不到解决方案,下面是: 要返回所有玩家,我将传入类似的内容: http://localhost:7777/api/teams/34fe3b6f-ba23-4657-820a-6c59dd49173a/播放器 要返回特定团队中的特定球员,我将传入类似于以下内容的内容: http://localhost:7777/api/teams/34fe3b6f-ba23-4657-820a-6c59dd49173a/Player/f7de7974-9cbb-4c2c-884e-2

我一直在研究这个问题,但仍然找不到解决方案,下面是:

要返回所有玩家,我将传入类似的内容: http://localhost:7777/api/teams/34fe3b6f-ba23-4657-820a-6c59dd49173a/播放器

要返回特定团队中的特定球员,我将传入类似于以下内容的内容: http://localhost:7777/api/teams/34fe3b6f-ba23-4657-820a-6c59dd49173a/Player/f7de7974-9cbb-4c2c-884e-29036d6c2d76

我不断得到以下错误: System.ArgumentException:“路由参数名称“id”在路由模板中出现多次。”

有人能告诉我怎么解决这个问题吗

[Route("api/Teams/{Id}/Players}")]
[ApiController]
public class PlayersController : ControllerBase
{

    [HttpGet]
    public IActionResult GetAllTeamPlayers(Guid id)
    {
        return Ok();
    }

    [HttpGet]
    public IActionResult GetTeamPlayer(Guid id, Guid id2)
    {
        return Ok();
    }
}

应按如下方式定义管线参数:

[Route("api/Teams/{teamId}/}")]
[ApiController]
public class PlayersController : ControllerBase
{

    [HttpGet("players")]
    public IActionResult GetAllTeamPlayers([FromRoute] Guid teamId)
    {
        return Ok();
    }

    [HttpGet("players/{playerId}")]
    public IActionResult GetTeamPlayer([FromRoute] Guid teamId, [FromRoute] Guid playerId)
    {
        return Ok();
    }
}

你这个传奇,太棒了!