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>