关于swagger——WebApi一个controller中出现多个Get是出现错误的处理

 

 

 /// 
    /// 测试处理
    /// 
    public class TestController : ApiController
    {
        /// 
        /// 根据角色获取该角色所有拥有的功能
        /// 
        /// 
        /// 
        [HttpPost]
        [Common.AccessToken]
        public Common.ResponseHeader GetByRole(int roleid)
        {
            return new Common.ResponseHeader { code=0,msg="",data=null};
        }

        /// 
        /// 获取所有功能
        /// 
        /// 
        [HttpGet]
        [Common.AccessToken]
        public Common.ResponseHeader GetAll()
        {
            return new Common.ResponseHeader { code = 0, msg = "", data = null };
        }
        /// 
        /// 获取所在代理下的所有功能
        /// 
        /// ces
        /// 
        [HttpGet]
        [Common.AccessToken]
        public Common.ResponseHeader GetAll(int id)
        {
            return new Common.ResponseHeader { code = 0, msg = "", data = null };
        }
    }

 这段代码会产生如下图的结果:

关于swagger——WebApi一个controller中出现多个Get是出现错误的处理_第1张图片

解决方案

对WebApiConfig中的路由进行修改

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

重新运行  问题得到解决

关于swagger——WebApi一个controller中出现多个Get是出现错误的处理_第2张图片

你可能感兴趣的:(关于swagger——WebApi一个controller中出现多个Get是出现错误的处理)