在同一个命名空间内,报错
错误的路由代码:
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(, new JsonMediaTypeFormatter());
}
}
}
请求链接:
var url = "/api/SalesApi/UpLoadAvatar?SalesID=" + saleid;
接口代码:
这个时候就会报错
报说找到了多个请求匹配的操作
就是UpLoadAvatar与UpLoadQRcode冲突,如果只有一个就不会有问题,
如果将UpLoadQRcode中请求参数SalesID改成ID,那么UpLoadQRcode可以运行,UpLoadAvatar不可以
正确的方式:
将路由中的注释部分取消
请求地址为:
var url = "/api/Sales/SalesApi/UpLoadAvatar?SalesID=" + saleid;
这个时候就没有问题了,可以正常请求