API ヘルプ ページにすべての API エンドポイントを表示し、希望するスタイルで表示するのに苦労しています。
ここに私のルートがあります:
config.Routes.MapHttpRoute("Orgs", "v1/Orgs/{orgId}",
new { controller = "Orgs", orgId = RouteParameter.Optional });
config.Routes.MapHttpRoute("OrgDescendants", "v1/Orgs/{orgId}/Descendants",
new { controller = "Orgs", action = "OrgDescendants" });
ここにすべてのコントローラーメソッドがあります:
[HttpGet]
public IEnumerable<Org> GetAllOrgs()
[HttpGet]
public Org Get(string orgId)
[HttpGet]
[ActionName("OrgDescendants")]
public List<Org> Descendants(string orgId)
[HttpPost]
public HttpResponseMessage Post(Org org)
[HttpPut]
public HttpResponseMessage Put(string orgId, Org org)
[HttpDelete]
public void Delete(string orgId)
ヘルプ ページに表示されるエンドポイントは次のとおりです。
GET v1/Orgs
POST v1/Orgs
PUT v1/Orgs/{orgId}
DELETE v1/Orgs/{orgId}
GET v1/Orgs/{orgId}/Descendants
ご覧のとおり、ヘルプ ページには次のエンドポイントがありません。
GET v1/Orgs/{orgId}
私は非常に多くの異なるルーティング順列を試しましたが、見失ってしまいました。何を試しても、エンドポイントが見つからないか、「正しく」フォーマットされていないことが常にあります。
たとえば、私は次のようになります。
GET v1/Orgs/{orgId}/Get
私がしたいとき:
GET v1/Orgs/{orgId}
または私は次のようになります:
PUT v1/Orgs?orgId={orgId}
私がしたいとき:
PUT v1/Orgs/{orgId}
どんな組み合わせを試しても、思い通りにはいかないようです。どんな助けでも大歓迎です!