c# - 无法获取带参数的路由

标签 c# asp.net-mvc

我正在尝试创建一个简单的产品 Controller 类,每当我调用 api/products/时,我都会得到“列表记录”,但是当我尝试调用 api/products/1 时,我得到 404 not found,我在做什么错了。

namespace api.Controllers
{

    [Route("api/[controller]")]
    public class productsController : Controller
    {




        // get record
        [HttpGet("/{id:int}")]
        public IActionResult GetRecord(int id)
        {
            return Ok("get record" + id.ToString());
        }


        // get records
        [HttpGet("/")]
        [HttpGet("")]
        public IActionResult ListRecords()
        {
            return Ok("list records");
        }



    }    
}

最佳答案

不要使用

    [HttpGet("/{id:int}")]

因为斜线指的是路径的根。而是使用

    [HttpGet("{id:int}")]

关于c# - 无法获取带参数的路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47985549/

相关文章:

c# - 在C#中生成任务并知道任务何时完成

c# - 使用 Json.Net 反序列化嵌套属性而不使用数据注释

c# - AI 运动 100% 像 C64 上的游戏 MAFIA

c# - 在 WinRT 中使用 FlipView 和 DataTemplateSelector 动态显示项目

c# - 如何根据当前用户登录在View中显示一些元素

c# - 具有 asp-controller 和 asp-action 属性的 anchor 不会呈现为链接

c# - 在 OneWay 绑定(bind)上使用 ConvertBack 函数而不是 Convert 函数

ASP.NET 5(即 Core 1.0)不可变配置

c# - 以编程方式将 Word (docx) 转换为 PDF

asp.net - 在本地主机(Chrome 和 FF)上,过期时间少于 1 年时未设置 cookie