に表示されません。このタイプにはカスタムモデルバインダーがあり、MapType<>
を使用してSwaggerにマッピングされます。タイプはパスパラメータとして経路で使用されルートは、私が(この特定のケースNodaTime.LocalDateに)カスタム型をとるエンドポイントを持って闊歩
、エンドポイントは闊歩/ Swashbuckleに表示されません。しかし、URLパラメータを削除すると(代わりにURLパラメータとして含まれています)、うまく表示されます。
エンドポイントのシンプルバージョン:両方のエンドポイントが実際に動作することを
public class MyController : System.Web.Http.ApiController
{
[Route("my/route/{date}")] // Doesn't show up
[Route("my/route")] // Does show up
[HttpPut]
public Task<IHttpActionResult> MyEndpoint(LocalDate date, InputModel inputModel) {
// Do stuff...
}
}
注、1だけ表示されません。タイプをDateTime
に変更すると、両方のエンドポイントが表示されることもありますが、有効な入力セットが変更されるため、これは必要ありません。
有効なパスのように見えないこと、LOCALDATEは – HelderSepu
...それはURLのルートでは表現できないオブジェクトであるので、タイプは、構造体を可能にするモデルバインダーを持っていますISO8601形式の文字列から解析する必要があります(オブジェクトではありません)。エンドポイントは正常に動作します。つまり、問題なくmy/route/2017-10-17で呼び出すことができます。 Swagger/Swashbuckleには表示されません。 https://github.com/heldersepu/SwashbuckleTest/blob/master/Swagger_Test/Controllers/ApiExplorerController.cs –
あなたがGetApiExplorerからすべてのエンドポイントを示すコントローラ/アクションを追加することができますトラブルシューティングするには!私は明日仕事をするときにそれを試してみます。 – HelderSepu