未按预期生成Web API帮助

时间:2015-01-16 07:53:27

标签: asp.net-web-api

[RoutePrefix("Office")]
public class OfficeController : ApiController
{

        [Route("~/Admin/{adid}")]
        public string GetAdminById(int adid) 
        {
            return string.Format("Enter value is {0}", adid);
        }
        [Route("~/User/{uid}")]
        public string GetUserByName(int uid)
        {
            return string.Format("Enter value is {0}", uid);
        }
    }

但是在

下面会生成帮助
GET api/Office?adminid={adid}
GET api/Office?userid={uid}

但我不是

GET Office/Admin/adid   
GET Office/User/uid         

为此,我为webapi.config

的管理员添加了一个路线
config.Routes.MapHttpRoute(
           name: "OfficeadminApi",
           routeTemplate: "api/{controller}/Admin/{adid}",
           defaults: new { **adid** = RouteParameter.Optional }
       );       

然后 2个签名由web api帮助生成

GET api/Office?adid={adid}
GET api/Office/Admin/{adid}  // I expected is generated but

如果在webapi.config中没有添加&f; f路由,那么属性路由的用途是什么?

根据属性路由,它应该生成在属性级别指定的路由。

请详细说明这个吗?

0 个答案:

没有答案