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重載

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM