Deep Insider の Tutor コーナー
>>  Deep Insider は本サイトからスピンオフした姉妹サイトです。よろしく! 
書籍転載:ASP.NET MVC 5 実践プログラミング

書籍転載:ASP.NET MVC 5 実践プログラミング

ルート定義からハイパーリンクを生成する - RouteLinkメソッド[Razor]

2014年10月21日

リンク先のルートパラメーターを指定したアンカータグを生成できるRouteLinkメソッドの使い方を解説。書籍転載の12本目(基礎編「4-3-2」)。

  • このエントリーをはてなブックマークに追加

書籍転載について

 本コーナーは、秀和システム発行の書籍『ASP.NET MVC 5 実践プログラミング』の中から、特にBuild Insiderの読者に有用だと考えられる項目を編集部が選び、同社の許可を得て転載したものです。

 

 『ASP.NET MVC 5 実践プログラミング』の詳細や購入は秀和システムのサイト目次ページをご覧ください。

ご注意

 本記事は、書籍の内容を改変することなく、そのまま転載したものです。このため用字用語の統一ルールなどはBuild Insiderのそれとは一致しません。あらかじめご了承ください。

4-3-2 ルート定義からハイパーリンクを生成する - RouteLinkメソッド

 ActionLinkメソッドとRouteLinkメソッドとの関係は、ちょうど、先述したBeginFormメソッドとBeginRouteFormメソッドの関係に似ています。ActionLinkメソッドはリンク先(コントローラー/アクション名)を文字列で指定するのに対して、RouteLinkメソッドではルートパラメーターを表す匿名型の一部として指定します。

【構文】RouteLinkメソッド

(1)MvcHtmlString RouteLink(String linkText, Object routeValues [,Object htmlAttributes])

(2)MvcHtmlString RouteLink(String linkText, String routeName [,String protocol , String hostName , String fragment] [,Object routeValues [,Object htmlAttributes]])

  • linkText: リンクテキスト
  • routeValues: ルートパラメーター
  • htmlAttributes: その他の属性
  • routeName: ルート名
  • protocol: プロトコル(http/https など)
  • hostName: ホスト名
  • fragment: フラグメント

 試しに、リスト4-14をRouteLinkメソッドで書き換えてみましょう。

Razor
@Html.RouteLink(
  " 詳細 ",                                        // リンクテキスト
  new { controller = "Result", Action = "Details", // ルートパラメーター
        id = "980-NI-05038-8", charset = "utf8" }, // その他の属性
  new { tabindex = 1 }
)
リスト4-16 Views/Link/Link.cshtml

※以下では、本稿の前後を合わせて5回分(第10回~第14回)のみ表示しています。
 連載の全タイトルを参照するには、[この記事の連載 INDEX]を参照してください。

書籍転載:ASP.NET MVC 5 実践プログラミング
10. Label/TextBox/TextArea/Password/Hidden/ RadioButton/CheckBoxメソッド[Razor]

XxxxxForメソッドとは異なり、「For」なしのメソッドは、モデルから独立したフォーム要素を生成できる。その使い方を解説。書籍転載の10本目(基礎編「4-2-7」)。

書籍転載:ASP.NET MVC 5 実践プログラミング
11. リンク/エンコード関連のビューヘルパー|ハイパーリンクを生成する - ActionLinkメソッド[Razor]

リンク/エンコード関連のビューヘルパー紹介の1つ目として、アンカータグを生成するためのメソッドの基本的な使い方を解説する。書籍転載の11本目(基礎編「4-3-1」)。

書籍転載:ASP.NET MVC 5 実践プログラミング
12. 【現在、表示中】≫ ルート定義からハイパーリンクを生成する - RouteLinkメソッド[Razor]

リンク先のルートパラメーターを指定したアンカータグを生成できるRouteLinkメソッドの使い方を解説。書籍転載の12本目(基礎編「4-3-2」)。

書籍転載:ASP.NET MVC 5 実践プログラミング
13. アプリケーションルートからの絶対パスを生成する - Url.Content/Action/RouteUrlメソッド[Razor]

リソース指定は、相対パスよりも、アプリケーションルートからの絶対パスの方がよい。そのような絶対パスを生成するUrlオブジェクトの機能を解説。書籍転載の13本目(基礎編「4-3-3」)。

書籍転載:ASP.NET MVC 5 実践プログラミング
14. HTMLエンコードを無効にする - Html.Rawメソッド[Razor]

デフォルトで実行されるHTML予約文字のエスケープ処理を無効にして生のままHTMLコードを出力するためのHtml.Rawメソッドについて解説。書籍転載の14本目(基礎編「4-3-4」)。

サイトからのお知らせ

Twitterでつぶやこう!