HTML.ActionLinkを使用して2つの値を渡す方法


通常、HTML.ActionLinkメソッドを使用すると、単一の値をクエリ文字列のパラメータとして渡すことができます。しかし、2つの値を渡す必要がある場合は、いくつかの方法があります。

  1. クエリ文字列を使用する方法: HTML.ActionLinkメソッドのオーバーロードを使用して、2つの値をクエリ文字列のパラメータとして渡すことができます。以下は、その例です。

    @Html.ActionLink("リンクテキスト", "アクションメソッド", new { param1 = value1, param2 = value2 })

    上記のコードでは、"リンクテキスト"はリンクに表示されるテキストです。"アクションメソッド"はリンク先のコントローラーのアクションメソッドの名前です。"param1"と"param2"はパラメータの名前であり、"value1"と"value2"はそれぞれの値です。

  2. ルートパラメータを使用する方法: もう1つの方法は、ルートパラメータを使用することです。これにより、URLの一部として値を渡すことができます。以下は、その例です。

    @Html.ActionLink("リンクテキスト", "アクションメソッド", new { id = value1, name = value2 })

    上記のコードでは、"id"と"name"はパラメータの名前であり、"value1"と"value2"はそれぞれの値です。この方法では、URLが次のようになります:/コントローラー名/アクションメソッド/値1/値2。

これらの方法を使用すると、HTML.ActionLinkを介して2つの値を渡すことができます。必要に応じて、さらに多くのパラメータを追加することもできます。

以上の方法は、ASP.NET MVCフレームワークで一般的に使用されるものです。必要に応じて、これらの例をカスタマイズして使用することができます。