ASP.NET MVC重点教程1周年版第8回Helperの進化

3289 ワード

何事にも原因がある
Filterのように、クラスのActionの前または後に統一されたコードを実行するために生成されます.
HelperはViewの開発を容易にするために生まれた.
いくつかの問題を解決し、Helperがどのように進化したのかを見てみましょう.


タイトル:どのようにしてViewにスーパー接続を書いてホームページに接続しますか?
この質問には答えやすいように見えます.
<a href="/home/index">  </a>

 


実は上のような案とは言えない書き方が一番で、何の方法も呼び出さず、純粋なHTMLだけで問題を解決しました.
しかし、もしRouteルールが変わったらどうしますか?元のように
            routes.MapRoute(

                "Default",  

                "{controller}/{action}/{id}",

                new { controller = "Home", action = "Index", id = "" }

            );

に改心
            routes.MapRoute(

                "Default",  

                "{controller}/{action}.htm",

                new { controller = "Home", action = "Index" }

            );

 
拡張子が変わりました.前の答えを押すと接続が変わります.
<a href="/home/index.htm">  </a>

 
プロジェクトにこのRouteルールに関する引用がたくさんあると、このようなロットの変更は疲れてしまい、間違いやすいに違いありません.
どうすればいいの?
だから私たちはUrlHelperを使います
<a href="<%=Url.Action("Index","Home")%>">  </a>
 
   Route                 
 

ターン


上記の方法ではUrlが変化に対応できるようにしているが、もう一つの問題はhref="<%=%>"という方式はVSでは知能感知やデバッグが難しいので、良いデバッグ方式が必要で最初のHtmlHelperが生まれた
<%=Html.ActionLink("  ","Index","Home")%>

 
これにより、インテリジェントな感知とデバッグが容易になり、コードもきれいになります.
 

けつごう


上記の浅見はなぜHelperが現れたのか、ASPを新しく勉強したいのかを説明している.NET MVCの友達が役に立ちます.