快问。 Html.ActionLink和创建内部链接(#home,#about等)

时间:2010-06-16 19:57:47

标签: asp.net-mvc model-view-controller asp.net-mvc-2 html-helper hyperlink

快速提问......

如何才能最好地创建内部链接?这是我想要实现的标记:

<h3>Title</h3>
<ul>
  <li><a href="#prod1">Product 1</li>
  <li><a href="#prod2">Product 2</li>
  <li><a href="#prod3">Product 3</li>
  ...
  <li><a href="#prod100">Product 100</li>
</ul>

<div id="prod1">
  <!-- content here -->
</div>

使用MVC 2我正在使用什么是最好的Html Helper?

<h3><%= Html.Encode(Model.Title) %>
<ul>

<% foreach ( var item in Model.Categories ) {%>
    <li><%= Html.RouteLink( item.Description, ???? ) %></li>
<%} %>

</ul>

获取内部链接的网址的最佳方法是什么? String.Format从头开始的链接?必须有一个更好的方法。

2 个答案:

答案 0 :(得分:2)

public static TagBuilder LocalAnchor(this HtmlHelper helper, string anchor, string text)
{
    var tag = new TagBuilder("a");
    tag.MergeAttribute("href", "#" + anchor);
    tag.SetInnerText(text);
    return tag;
}

答案 1 :(得分:1)

“&GT;

路由功能不适用于内部链接;你必须自己生成它们。