GetAll API に次のようなフィルター パラメーターを提供したいと考えています。
/api/v1/location/amsterdam/order/?filter=x
しかし、このルートでは:
routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/v1/location/{location}/{controller}/{id}",
defaults: new { id = RouteParameter.Optional}
);
そしてこのURL:
/api/v1/location/amsterdam/order/?filter=x
例外があります:
「リクエストに一致するアクションがコントローラ 'Order' に見つかりませんでした。」
「注文」コントローラーには次のメソッドがあります。
public HttpResponseMessage Get(int id)
public IQueryable<OrderDTO> Get(string filter)
public HttpResponseMessage Get()
{location}
ルートと URL ( ) からセグメントを削除すると/api/v1/location/order/?filter=x
、リクエストはメソッドによって照合されGet(string filter)
ます。
私は何を間違っていますか?これを行う適切な方法は何ですか?