我是ASP.net MVC的新手。我正在将Web表单中的母版页转换为MVC母版页。但是,菜单的CSS设计方式使我无法使用以下语法:
<li><span><%: Html.ActionLink("Index", "Index", "Home")%></span></li>
我需要
形式的语法 <a href=""> ..... </a>
。
我正在使用aspx视图引擎。我使用Html.ActionLink语法,我的CSS不起作用,并且造成很多混乱。
但是,我需要像以前的应用程序一样获得精确的外观和感觉。我正在使用ASP.net MVC2
请帮助..我不确定是否可能..
我没有使用以下语法重定向到该页面:
<a href="/Products/Details/">this prodcut</a>
答案 0 :(得分:4)
Url.Action是你的朋友!
使用Razor视图引擎:
<a href="@Url.Action("Index", "Home")" style="" class="" whatever="">My link</a>
使用ASPX视图引擎:
<a href="<%: Url.Action("Index", "Home") %>" style="" class="" whatever="">My link</a>
答案 1 :(得分:2)
这应该有效
<a href="@Url.Action("Action","Controller")">Text</a>
答案 2 :(得分:0)
即使您使用
它将最终渲染到html页面中的锚链接。它不是标签的问题,它与css检查它彻底..
确认在IE中使用开发人员工具..通过单击F12,您可以了解标记在页面中的呈现方式。
此致 Pavan.g
答案 3 :(得分:0)
所有css都可以使用。
如果你有这样的ActionLink:
Html.ActionLink("Index", "Index", "Home")
它生成以下Html:
<a href="yousite/Home/Index">Index</a>
如果要添加类,请按以下方式编写:
Html.ActionLink("Index", "Index", "Home", null, new {@class="myclass"})
它生成以下Html:
<a class="myclass" href="yousite/Home/Index">Index</a>
在MVC中,强烈建议使用Html.ActionLink
。 MVC基于路由。如果您更改路由,Html.ActionLink
会自动更改生成的链接。
答案 4 :(得分:0)
要链接到控制器中的操作方法,请使用以下命令:
<a href="/ControllerName/ActionName">...</a>
因此,如果您想访问Index
控制器中的Home
方法,请使用:
<a href="/Home/Index">...</a>
您还可以使用ActionLink
添加类,例如
Html.ActionLink("LinkText", "Controller", "Action", null, new {@class="css class"})
这将产生如下链接:
<a href="/Controller/Action" class="css class">LinkText</a>