Mvc视图构建辅助方法

编写HTML的辅助方法:

  ActionLink方法:

     参数介绍:

       linkText:连接文本

       actionName:连接到动作名称

       controllerName:连接到控制器的名称 该参数是可选的,如果没有提供,默认       

       是当前控制器。

     routeValue:传递至动作的可选参数。可以作为匿名类型或者                  RouteValueDictionary实例提供该列表(与控制器中的RedirectToAction方法一样)

htmlAtrrbutes:html特性列表,该列表将插入到连接的锚标签中,参数可选,并且可以定义为匿名类型,也可定义为IDictionary<string,object>类型。

rotocol,hostname,fragment,这三个参数可以用于微调链接,更改协议(例如:该为https),更改主机名或者请求滚动页面到一个指定位置

示例:

<% = Html.ActionLink("Go to the About Page","About"%>

对应Html原始对象:

<a href="/Home/About"> Go to the About Page</a>

复杂示例:

<%= Html.ActionLink("Go to the About page",

                    "About",

                     "Home",

                     "http",

                     "localhost:7448",

                      "footer",

                      New {

                      Id=11,

                      Name="lin.su"

                      },

                      New {

                      Style="border:1px solid black",

                      Onclick="alert('Hello Mvc')",

                      Target="_blank"

                      }

这段代码是说:创建一个指向About动作的链接,传递参数(id=11 ,name=lin.su)

 设置样式以及目标,并添加一个onclick事件,该事件打开连接之前在另一个窗口打 开一个javascript警告对话框。

 对应的Html原始对象:

<a href="http://localhost:7448/Home/About/11/Nmae=lin.su#footer"

 Onclick="alert('Hello Mvc');" 

 Style="border:1px solid black"

 Target="_blank"

 >Go to the About page</a>

 

基于lambda表达式指定必要的连接动作

<%=  Html.ActionLink<HomeController>(c => c.About(),"Link to About")%>

RouteLink方法;

基本参数和ActionLink相同

示例:

 <%= Html.RouteLink("Link to About",

              New {

              Action="About",

              Controller="Home",

              Id=12,

              Name="lin.su"

           },null)

%>

对应Html原始代码:

<a href="/Home/About/12?name=lin.su">Link to About</a>

posted @ 2012-03-23 13:26  sulin  阅读(280)  评论(0编辑  收藏  举报