Razor ActionLink傻瓜

时间:2011-11-03 21:16:19

标签: asp.net-mvc-3 razor

这个Razor标签:

@:[ @Html.ActionLink("Log On", "LogOn", "Account") ]

渲染如下:

[ Log On (/ACCOUNT/LOGON) ][/code]

这是生成的HTML:

[ <a href="/Account/LogOn">Log On</a> ]

如何防止它执行此操作或仅在调试模式下执行此操作? 如果确实如此,那就太愚蠢了,因为它弄乱了我对模板的看法。

另外,我如何在Razor中执行此操作:

<a href="http://myexternallink.com"><img alt="external" src="@Url.Content("./Content/themes/base/images/spacer.gif")" class="icoExternal"></a>

1 个答案:

答案 0 :(得分:0)

此语法

@:[ @Html.ActionLink("Log On", "LogOn", "Account") ]

只是抛出异常,因为它是无效的语法。

假设默认路线:

[ @Html.ActionLink("Log On", "LogOn", "Account") ]

渲染:

[ <a href="/Account/LogOn">Log On</a> ]

在所有模式(调试,释放,等等)中,这是预期的行为。

  

如何防止这样做

这是预期的行为,我不明白你为什么要阻止这样做呢?如果您不想使用方括号,只需删除它们:

@Html.ActionLink("Log On", "LogOn", "Account")

就你的第二个问题而言:

<a href="http://myexternallink.com">
    <img alt="external" src="@Url.Content("~/Content/themes/base/images/spacer.gif")" class="icoExternal" />
</a>