[英]asp.net mvc web api help page not populating for given route
我在為Web api控制器填充幫助頁面時遇到困難。 控制器中的唯一方法如下:
public HttpResponseMessage Get(string p1,string p2= "blend", string p3 = "blend")
該方法將顯示在幫助頁面上並帶有簽名:
GET api/mycontroller?p1={p1}&p2={p2}&p3={p3}
但是,我的評論都沒有流到幫助頁面。 對於其他簡單的控制器Get(string id)
,幫助頁面可以正常工作。
我嘗試在WebApiConfig.cs上添加以下內容
config.Routes.MapHttpRoute( name: "mycontroller", routeTemplate: "api/mycontroller/{p1}/{p2}/{p3}", defaults: new { p1 = RouteParameter.Optional, p2 = RouteParameter.Optional, p3 = RouteParameter.Optional
} );
但是,幫助頁面仍未填充用於摘要,參數描述或返回的注釋。
與其嘗試在設置中使用基於約定的路由解決問題,不如使用屬性路由 。
首先在WebApiConfig.cs中啟用它
config.MapHttpAttributeRoutes();
然后用路由裝飾控制器中的方法
[HttpGet]
[Route("api/mycontroller")]
public HttpResponseMessage Get1(string p1, string p2= "blend", string p3 = "blend")
//Call this api/mycontroller?p1=valueOne&p2=valueTwo&p3=valueThree
[HttpGet]
[Route("api/mycontroller/{p1}/p2/p3")]
public HttpResponseMessage Get2(string p1,string p2= "blend", string p3 = "blend")
//Call this api/mycontroller/valueOne/valueTwo/valueThree
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.