2016-07-27 8 views
0

私はapiを作成する必要があるチーム内の要件を持っています。これはユーザーに利用可能なすべてのAPIと対応するリクエストをユーザーに提供する必要があります。私は、DBテーブルにapiのエンドポイントを保存し、ユーザーの要求に基づいて、このuriを読んで取得することを計画していました。しかし、私は別のAPIコントローラからapiのエンドポイントでassocaited要求オブジェクトにアクセスする方法がわかりません。ASP.NET Web APIでuriのリクエストオブジェクトを取得する方法は?

上記のコードでは、エンドポイントをハードコードしていますが、caseステートメントに基づいてリクエストクラスも記述されています。私はこれをすべてのエンドポイントで行う必要があるので、これらのエンドポイントをDBに移動してから読み込むことを希望しましたが、私にとっては要求クラスを指定するのではなく、エンドポイントの要求クラスを取得する方法です。

+1

使用Request.RequestUriを、次のような何かをApiExplorerクラスのApiDescriptionsプロパティを使用することができますか? – Harminder

答えて

0

あなたは... APIの入力パラメータにアクセスするにはApiDescription.ParameterDescriptionsプロパティを使用し、その後APIエンドポイントのApiDescriptionを取得するには、コントローラで

ApiParameterDescription paramDesc; // Use appropriate code to populate this 
var type = paramDesc.ParameterDescriptor.ParameterType; 
var defaultValue = paramDesc.ParameterDescriptor.DefaultValue; 
関連する問題