2016-07-15 150 views
0

我想在ASP.Net的Web API來創建結構如下2ASP.NET網頁API 2路由

https://<host>/api/webhooks/incoming/custom 

我可以通過創建控制器網絡掛接導航到網絡掛接,但我怎麼可以創建其他兩個在它之下?

對此有任何想法嗎?

回答

2

你可以用屬性路由來做到這一點。

在控制器中,您可以將RoutePrefix添加到控制器,然後直接在該方法上指定每條附加路線。然後控制器內的所有方法路由將以api/webhooks/incoming開頭。要調用GetStarted()可能會出現路由api/webhooks/incoming/custom

[RoutePrefix("api/webhooks/incoming")] 
    public class StartUpController : ApiController 
    { 
     [HttpGet] 
     [Route("custom")] 
     [AllowAnonymous] 
     public IHttpActionResult GetStarted() 
     { 
      return Ok(); 
     } 
    } 

或者你可以直接在方法指定完整路徑。這條路線也將是api/webhooks/incoming/custom

public class StartUpController : ApiController 
    { 
     [HttpGet] 
     [Route("api/webhooks/incoming/custom")] 
     [AllowAnonymous] 
     public IHttpActionResult GetStarted() 
     { 
      return Ok(); 
     } 
    } 

你可以閱讀更多關於它here