0

一部のルートで問題が発生しています。まず、この投稿を参照してください: REST api, POST entity with relationship?

その回答のルートを実際に作成する方法がわからないので、これを始めました:

config.Routes.MapHttpRoute(
            name: "DefaultApi",
            routeTemplate: "api/{controller}/{id}",
            defaults: new { id = RouteParameter.Optional }
        );

        //Artist/////////////////////////////
        config.Routes.MapHttpRoute(
            name: "ArtistAlbum",
            routeTemplate: "api/artist/{id}/album",
            defaults: new { controller = "ArtistAlbum" }
        );
        ////////////////////////////////////

/api/ArtistAlbum/{artistid}/albumしかし、最初のルートを使用すると、私が探しているものとはまったく異なる場所に移動するだけで、投稿、取得などを行うこともできます。

/api/artist/{id}/albumルートを使用して、ユーザーを取得、投稿、投稿、削除などのみに制限したい。何か案は?

あなたが私に尋ねると、手動で多くのルートを作成するので、これを行う方法の提案はあまり良くないようです.

4

1 に答える 1

0

ここでは順序が重要です。api/artist/{id}/albumのようなものよりも優先したい場合api/artist/{id}は、呼び出しの順序を次のように切り替える必要がありますconfig.Routes.MapHttpRoute

この方法では、api/artistルートが よりも優先されapi/ANYTHINGます。

于 2013-03-11T20:09:16.700 に答える