ホームページ > バックエンド開発 > C++ > ASP.NET MVCで複数のパラメータをルーティングするにはどうすればよいですか?

ASP.NET MVCで複数のパラメータをルーティングするにはどうすればよいですか?

Susan Sarandon
リリース: 2025-01-16 23:29:08
オリジナル
439 人が閲覧しました

How to Route Multiple Parameters in ASP.NET MVC?

ASP.NET MVC のマルチパラメーター ルーティングの詳細な説明

ASP.NET MVC に基づいて RESTful API を設計する場合、多くの場合、コントローラーのアクション メソッドに複数のパラメーターを渡すことが必要になります。この記事では、この状況に対処する方法を検討し、利用可能な方法を詳しく説明します。

クエリ文字列を使用してパラメータを渡します

デフォルトでは、MVC はクエリ文字列パラメーターをアクション メソッドのパラメーターに自動的にマップします。以下のハウツーを検討してください:

<code class="language-csharp">public ActionResult GetImages(string artist, string apiKey)</code>
ログイン後にコピー

次のような HTTP リクエスト:

<code>http://ws.audioscrobbler.com/2.0/?method=artist.getimages&artist=cher&api_key=my_key</code>
ログイン後にコピー

アーティストと apiKey パラメータは、GetImages オペレーションを呼び出すときに設定されます。

「id」パラメータの特殊なケース

クエリ文字列の代わりに、「id」という名前のパラメータを URL パスに含めることができます。たとえば、次のようになります:

<code class="language-csharp">public ActionResult GetImages(string id, string apiKey)</code>
ログイン後にコピー

次の URL を使用して呼び出すことができます:

<code>http://ws.audioscrobbler.com/2.0/Artist/GetImages/cher?api_key=my_key</code>
ログイン後にコピー

カスタムルーティングルール

より複雑なケースの場合、MVC はルーティング ルールをカスタマイズしてアクションを見つける柔軟性を提供します。 global.asax ファイルで、デフォルトのルーティング モードを指定する Routes.MapRoute メソッドを編集します。

例: 特定のパラメーターを使用したカスタム ルーティング

次のように URL を処理するには:

<code>http://ws.audioscrobbler.com/2.0/Artist/GetImages/cher/my_key</code>
ログイン後にコピー

次のルートを追加できます:

<code class="language-csharp">routes.MapRoute(
    "ArtistImages",
    "{controller}/{action}/{artistName}/{apiKey}",
    new { controller = "Artist", action = "GetImages", artistName = "", apiKey = "" }
);</code>
ログイン後にコピー

このカスタム ルートでは、GetImages オペレーションが呼び出され、artistName パラメーターと apiKey パラメーターが URL セグメントから設定されます。

以上がASP.NET MVCで複数のパラメータをルーティングするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート