問題
如何為路由中參數(shù)設(shè)置默認(rèn)值。
解決方案
不管使用屬性路由還是集中式路由,ASP.NET WEB API 都可以很方便的為路由定義默認(rèn)參數(shù)。在每次客戶端請求的時(shí)候,如果客戶端沒有傳這些參數(shù),框架會自動(dòng)給他們賦值。
對于集中式路由,MapHttpRoute 擴(kuò)展方法接收默認(rèn)值使用的是第三個(gè)參數(shù) IDictionary
config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new {id = VALUE} );
在屬性路由中,直接在屬性聲明中定義默認(rèn)值。
[Route("items/{id:int=VALUE}")] public HttpResponseMessage Get(