MVC4应用程序徽标问题

时间:2014-05-01 19:22:02

标签: html asp.net-mvc asp.net-mvc-4

我想在我的MVC 4网站上添加一个徽标。点击该徽标后,它应该导航到主屏幕。我在 _Layout.cshtml 文件中使用以下代码来实现此目的。

<a href='<%= Url.Action("Index","Home") %>'> <img src="../Images/logo.JPG" /></a>

在Internet Explorer中,如果我点击徽标,似乎什么也没发生。但在谷歌浏览器中,我收到的错误为错误请求 - 无效网址。网址内容为

http://localhost:3347/Home/%3C%=%20Url.Action(%22Index%22,%22Home%22)%20%%3E

如果我在这里犯了任何错误,请告诉我。

2 个答案:

答案 0 :(得分:2)

尝试

<a href='@Url.Action("Index","Home")'> <img src="../Images/logo.JPG" /></a>

或者您可以使用

<a href='/'> <img src="../Images/logo.JPG" /></a>

如果您网站的根目录是'/',即它仍然最终会转到Home / Index,如果这是RouteConfig.RegisterRoutes()中配置的默认值。

答案 1 :(得分:1)

您的问题是它确实将链接设置为<%= Url.Action("Index","Home") %>而不是该调用的结果。 Razor模板不使用<%= %>语法。请尝试以下方法:

<a href='@Url.Action("Index","Home")'> <img src="../Images/logo.JPG" /></a>

此外,在处理静态资产时,您应该使用Url.Content,它将为您添加正确的应用程序路径前缀,这样您就不会在各种部署方案中断开链接:

<img src="@Url.Content("~/Images/logo.jpg")" />