WebApi 找到了与该请求匹配的多个操作

在同一个命名空间内,报错 

错误的路由代码:

复制代码
namespace CRM4S
{
    public static class WebApiConfig
    {
        public static void Register(HttpConfiguration config)
        {
            config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{id}",
                defaults: new { id = RouteParameter.Optional }
            );

           // config.Routes.MapHttpRoute(
           //    name: "SalesApi",
           //    routeTemplate: "Api/Sales/{controller}/{action}/{id}",
           //    defaults: new { id = RouteParameter.Optional }
           //);

            config.Formatters.Clear();
            config.Formatters.Insert(0, new JsonMediaTypeFormatter());
        }
    }
}
复制代码

请求链接:

  var url = "/api/SalesApi/UpLoadAvatar?SalesID=" + saleid;

接口代码:

这个时候就会报错

报说找到了多个请求匹配的操作

就是UpLoadAvatar与UpLoadQRcode冲突,如果只有一个就不会有问题,

如果将UpLoadQRcode中请求参数SalesID改成ID,那么UpLoadQRcode可以运行,UpLoadAvatar不可以

正确的方式:

将路由中的注释部分取消

请求地址为:

 var url = "/api/Sales/SalesApi/UpLoadAvatar?SalesID=" + saleid;

这个时候就没有问题了,可以正常请求

 

posted @   hongdada  阅读(15701)  评论(7编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示