首页 > 解决方案 > 无法命中包含泛型类型的 API 端点

问题描述

我正在开发一个 Web API,它工作正常,除了一个端点并返回 404 相同。下面是我的代码,我使用泛型类型添加 2 个输入参数。

方法:

    [AllowAnonymous]
    [HttpGet("{number1}/{number2}")]
    [IgnoreAntiforgeryToken]
    public dynamic AddTwoInputs<T>(T number1, T number2)
    {
        dynamic a = number1;
        dynamic b = number2;
        return a + b;
    }

我正在尝试使用 URL“domain/ api/Users/AddTwoInputs/1/2 ”从邮递员Get方法中获取它。请提出解决方案。

标签: c#asp.net-web-api

解决方案


很确定 aspnet 只是忽略了该方法,因为泛型类型不适用于控制器方法。

您的代码就是一个很好的例子。url 只是一个字符串,无法知道 API 的参数类型是什么。如果它打算是数字,你会得到 result 3。如果它是一个字符串,它将导致12.


推荐阅读