ASP Net Core属性路由和双正斜杠

时间:2018-05-09 08:30:42

标签: c# asp.net-core asp.net-core-webapi attributerouting asp.net-core-routing

正如here所指出的,在URL中使用双斜杠是有效的。

我有一个ASP Net Core项目,它使用属性路由,一个名为GroupController的控制器用于处理Group上的操作,以及一个PUT ting RulePart的操作由ImportId类型string指定的组。

[Route("/api/[controller]")]
public class GroupController : ControllerBase
{
    [HttpPut("{groupImportId?}/ruleParts")]
    public async Task<IActionResult> PutRuleParts(string groupImportId, [FromBody]List<RulePartDto> ruleParts)
    {
        return null; //actual code ommitted for brevity
    }
}

http://localhost/api/group/groupImportId/ruleParts之类的网址符合预期。

我希望null groupImportId,即http://localhost/api/group//ruleParts之类的网址会调用相同的操作,因为groupImportId路由参数已被标记为可选。但是,在尝试调用此URL时,我收到404错误,并且未执行操作。

是否有可能匹配ASP Net Core中的空URL路径段?

0 个答案:

没有答案