【问题标题】:How to fix error 404 No type was found that matches the controller named 'get'."如何修复错误 404 找不到与名为“get”的控制器匹配的类型。”
【发布时间】:2019-04-09 09:49:30
【问题描述】:

我正在尝试在我的 Web api 上使用 get 方法,以便我可以从 sql server 获取数据,但它说没有找到与请求 URI 'http://192.168.250.113/PrimaSysWebAPI/api/get/GetUserData'匹配的 HTTP 资源。",

    [RoutePrefix("api/get")]
    public class GetlookUpDataController : ApiController
    {
        private readonly UserProfileRepository lookUpRepo;

        public GetlookUpDataController()
        {

            lookUpRepo = new UserProfileRepository();
        }

        [HttpGet]
        [Route("GetUserData")]
        public IHttpActionResult Retreive([FromBody] Profile data)
        {
            var retrieveResult = lookUpRepo.View();

            if (retrieveResult.Length > 4)
            {




                return Ok(retrieveResult);

            }
            else
            {
                Console.Write("error");
                return Ok("error");
            }


        }

【问题讨论】:

  • 我想一定是 => http://192.168.250.113/api/get/GetUserData 没有PrimaSysWebAPI
  • HTTP 错误 404.0 - 未找到 您要查找的资源已被删除、更改名称或暂时不可用。这是我在删除 primasysWebAPI 时发现的。注意我正在使用 IIS 运行 API
  • 能否请您显示WebApiConfig.cs 内的路线?

标签: c#


【解决方案1】:

在这里查看我的答案:my_answer,因此您应该了解如何使用前缀。

那么别忘了解决这个问题:你有[RoutePrefix("api/get")],然后是[Route("GetUserData")],所以你在api/get之后缺少/

比你没有定义/PrimaSysWebAPI/api 之前的那个前缀所以没有在任何地方定义

【讨论】:

    猜你喜欢
    • 2020-02-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-21
    • 2013-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多