You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET Core 2.1集成MongoDB遇路由模板错误,无法访问指定API

解决.NET Core 2.1 + MongoDB路由类型错误问题

嘿,我来帮你搞定这个路由错误问题!你遇到的报错核心原因很明确:路由模板里的[Contactinfo]不是ASP.NET Core路由系统默认支持的令牌,系统只认action和controller这两个内置令牌,所以找不到对应的替换值才会抛出错误。

你的需求是正常访问api/contactinfo/getlist,其实不用修改Startup.cs、launchsettings.json或者appsettings.json,只需要调整控制器上的路由属性配置就可以了,具体修改如下:

修改后的控制器代码

[Produces("application/json")]
// 把原来的[Route("api/[Contactinfo]")]改成固定路由段api/contactinfo
[Route("api/contactinfo")]
[ApiController]
public class ContactApiController : ControllerBase 
{ 
    [HttpGet("GetList")]
    public ActionResult<List<ContactInfo>> GetContactList() 
    { 
        return _Repository.AsQueryable().ToList();
    } 
}

补充说明

如果之后你想让路由根据控制器名称自动生成,记得使用内置的[controller]令牌。比如你的控制器类名是ContactApiController,那[Route("api/[controller]")]会自动生成api/contactapi的路由前缀,但你这里需要的是固定的contactinfo,所以直接写死路由段是最直接的解决方案。

内容的提问来源于stack exchange,提问作者Nouman khan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.07 15:43:13