ルーティングを使用してasp.net Web APIプロジェクトをセットアップしました(Mvcプロジェクトとまったく同じように機能します)-したがって、次のようになります
routes.MapHttpRoute(
name: "API Default",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
したがって、すべてが思い通りに機能します.... api/Products/15 と入力すると、製品コントローラーに到着し、ID として 15 が渡されます。
偉大な。
さらに 2 つのコントローラーがあり、1 つは UploadsController と呼ばれ、もう 1 つは DownloadsController と呼ばれます。これらはアップロードとダウンロードを提供します (GET / PUT など)
今、私はそれらが元のルールによって取り上げられることを望んでいません(上記を参照)
しかし、私が望むのは、これらの2つのURLを使用してアクセスすることです
/api/トランスポート/アップロード/15 /api/トランスポート/ダウンロード/15
ID として 15 を渡しましたが、おそらく実際には発生しないでしょう...デモンストレーションに適しています :-)
現在、トランスポートは存在しないため、次のことができます
routes.MapHttpRoute(
name: "API Default",
routeTemplate: "api/Transports/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
私はそれがうまくいくと信じています...
しかし、問題は、もし私がそうするなら
/api/Uploads/15 - これは、私が望まない元のルールによってもキャッチされます..
トランスポートなしではなく、偽の「トランスポート」を介してアップロードおよびダウンロードコントローラーにアクセスしたい
誰でも助けることができますか?
前もって感謝します