相关疑难解决方法(0)

在ASP.NET MVC Html.ActionLink中包含锚标记

在ASP.NET MVC中,我正在尝试创建一个包含锚标记的链接(即,将用户指向页面,以及页面的特定部分).

我尝试创建的URL应如下所示:

<a href="/category/subcategory/1#section12">Title for a section on the page</a>
Run Code Online (Sandbox Code Playgroud)

我的路由设置符合标准:

routes.MapRoute("Default", "{controller}/{action}/{categoryid}"); 
Run Code Online (Sandbox Code Playgroud)

我正在使用的操作链接语法是:

<%foreach (Category parent in ViewData.Model) { %>
<h3><%=parent.Name %></h3>
<ul>
<%foreach (Category child in parent.SubCategories) { %>
    <li><%=Html.ActionLink<CategoryController>(x => x.Subcategory(parent.ID), child.Name) %></li>
<%} %>
</ul>
<%} %>
Run Code Online (Sandbox Code Playgroud)

我的控制器方法如下:

public ActionResult Subcategory(int categoryID)
{
   //return itemList

   return View(itemList);
}
Run Code Online (Sandbox Code Playgroud)

以上正确返回URL如下:

<a href="/category/subcategory/1">Title for a section on the page</a>
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚如何添加#section12部分."section"一词只是我用来分解页面部分的约定,而12是子类别的ID,即child.ID.

我怎样才能做到这一点?

asp.net-mvc

150
推荐指数
4
解决办法
13万
查看次数

使用url片段创建T4MVC ActionLink

有没有办法在其中创建一个带有哈希/磅/片段的强类型T4MVC ActionLink?

例如,这是我想要创建的链接:

<a href="/Home/Index#food">Feed me</a>
Run Code Online (Sandbox Code Playgroud)

但是没有可以做到这一点的T4MVC对象的扩展.

<%= Html.ActionLink("Feed me", T4MVC.Home.Index()) %>
Run Code Online (Sandbox Code Playgroud)

所以,我最终要做的是创建一个动作,然后以这种方式嵌入它:

<a href="<%= Url.Action(T4MVC.Home.Index()) %>"#food>Feed me</a>
Run Code Online (Sandbox Code Playgroud)

这不是很理想.任何人有任何想法/建议?

提前致谢

asp.net-mvc t4mvc html.actionlink

10
推荐指数
2
解决办法
5245
查看次数

标签 统计

asp.net-mvc ×2

html.actionlink ×1

t4mvc ×1