Html.ActionLink

以下使用参数文字说明:

  1. linkText:生成的链接所显示的文字         类型:string
  2. actionName:对应控制器的方法          类型:string
  3. routeValues:向对应的action传递的参数     类型:object 或 RouteValueDictionary
  4. controlName:指定控制器的名称          类型:string
  5. htmlAttributes:设置<a>标签的属性                   类型:object 或 IDictionary
  6. protocol:指定访问协议如:http等        类型:string
  7. hostName:指定访问域名            类型:string
  8. fragment:指定访问锚点             类型:string

 

重载一:Html.ActionLink("linkText","actionName")【默认当前页面控制器】

调用:<%: Html.ActionLink("默认当前页面控制器", "About")%>

生成效果:<a href="/Home/About">默认当前页面控制器</a>

 

 

重载二:Html.ActionLink("linkText","actionName",routeValues)

调用:

  routeValues Is object:

  <%: Html.ActionLink("默认当前页面控制器", "About", new { id = 1, type = "Dic" })%>

  routeValues Is RouteValueDictionary:

  <%RouteValueDictionary Dictionary = new RouteValueDictionary();
  Dictionary["id"] = 1;
  Dictionary["type"] = "Dic";
  %>

  <%: Html.ActionLink("默认当前页面控制器", "About", Dictionary)%>

生成效果:<a href="/Home/About?classid=1">默认当前页面控制器</a>

 

 

重载三:Html.ActionLink("linkText","actionName","controlName")

调用:<%: Html.ActionLink("默认当前页面控制器", "About", "Home")%>

生成效果:<a href="/Home/About">默认当前页面控制器</a>

 

重载四:Html.ActionLink("linkText","actionName",routeValues,htmlAttributes)

调用:

  htmlAttributes Is object:

  <%: Html.ActionLink("首页", "Index", "Home", null, new { @class = "active", target = "_blank" })%>【注:由于class是保留关键字,所以一定要写成@class】

  htmlAttributes Is IDictionary:

  <%IDictionary<string, object> AttrDictionary = new Dictionary<string, object>();

  AttrDictionary["class"] = "active";

  AttrDictionary["target"] = "_blank";
  %>

生成效果:<a class="active" href="/" target="_blank">首页</a>

 

重载五:Html.ActionLink("linkText","actionName","controlName","protocol","hostName","fragment",routeValues,htmlAttributes)

调用:<%: Html.ActionLink("关于我们", "About", "Home", "http", "localhost", "top", null, null)%>

生成效果:<a href="http://localhost:12120/Home/About#top">关于我们</a>

 

以上的重载并非.NET中的重载,纯属为了方便查看、比较.

     另外有几个问题没有找到答案

    1、重载五 中的调用,怎么把端口去掉;也就是生成的效果不显示端口例如:http://www.cnblogs.com/Relict/

    2、怎么在生成的链接中添加标签、和生成图片链接

 附:

关于System.Web.Mvc.dll中LinkExtensions类的ActionLink重载

 

转载于:https://www.cnblogs.com/Relict/archive/2012/04/27/2473340.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值