zoukankan      html  css  js  c++  java
  • 【总结】详细说说Html.ActionLink的用法

    Html.ActionLink概述

     在MVC的Rasor视图引擎中,微软采用一种全新的方式来表示从前的超链接方式,它代替了从前的繁杂的超链接标签,让代码看起来更加简洁,通过浏览器依然会解析成传统的a标签。除此之外,还允许我们添加Html属性。下面来看看@Html.ActionLink()的使用方法吧。

    Html.ActionLink的使用详解

     @Html.ActionLink("linkText","actionName")

    这种重载的第一个参数是该链接要显示的文字,第二个参数是对应的控制器的方法(Action),默认控制器为当前页面对应的控制器,若当前页面的控制器为Products, @Html.ActionLink("detail","Detail") 则会生成 <a href="/Products/Detail">detail</a>

    @Html.ActionLink("linkText","actionName","controlName")

    该重载比第一个重载多了一个参数,他指定了控制器的名称,如 @Html.ActionLink("detail","Detail","Products") 则会生成 <a href="Products/Detail">detail</a>

    @Html.ActionLik("linkText","actionName",routeValues)

    相对于上一种重载方式,该重载新增了routeValue参数,routeValue可以向action传递参数,如 @Html.ActionLink("detail","Detail",new { id=1}) ,会生成

    <a href="Products/Detail/1">detail</a> ,此处假设当前的控制器是Products。

    @Html.ActionLink("linkText","actionName",routeValues,htmlAttributes)

    htmlAttribute可以设置 <a> 标签的属性,如 @Html.ActionLink("detail","Detail",new{id=1},new{ target="_blank"}) 会生成 <a href="Products/Detail/1" target="_blank"> detail </a> ,

    需要主要的是如果写成 new{ target="_blank",class="className"} 则会报错,

    因为class是关键字,此处应该写成 @class="className"

    @Html.ActionLink("linkText","actionName","controlName",routeValues,htmlAttributes)

    该种重载汇聚了以上四种重载的所有参数,是功能最全的重载。

    总结

    以上就是@Html.ActionLink()的使用方法,由于参数个数和顺序比较容易混淆,所以还是要多练习才可以掌握,新技能Get!

     作者:悠扬的牧笛

     博客地址:http://www.cnblogs.com/xhb-bky-blog/p/4107404.html

     声明:本博客原创文字只代表本人工作中在某一时间内总结的观点或结论,与本人所在单位没有直接利益关系。非商业,未授权贴子请以现状保留,转载时必须保留此段声明,且在文章页面明显位置给出原文连接。

     
  • 相关阅读:
    课堂作业之公文流转
    统计字符出现频率(java)
    课堂测试第八周
    HTML学习笔记——语法+骨架
    HTTP协议
    MVC架构模式概述
    CodeIgniter框架——CI中视图路径问题
    CodeIgniter框架——CI组件间信息流走向
    CodeIgniter框架——数据库类(配置+快速入门)
    chm文件无法阅读
  • 原文地址:https://www.cnblogs.com/xhb-bky-blog/p/4107404.html
Copyright © 2011-2022 走看看