Joe*_*Net 1 c# asp.net asp.net-mvc-4
根据提供的答案:
我有以下ActionLink:
<li>@Html.ActionLink("ExternalLink", "http://google.com")</li>
Run Code Online (Sandbox Code Playgroud)
但我仍然得到'资源无法找到错误',:
请求的网址:/Home/http:/ google.com
这是标记/ Home到绝对路径.
更新:我希望连接一个外部URL(我自己的,在Web项目之外)并在控制器中连接一个ActionResult ..啊,是因为我正在使用HomeController,当我应该使用一个新的?
我究竟做错了什么?
任何帮助,非常感谢.
乔
你这里不需要Razor.只需使用一个标签.
<a href="http://google.com">Link to Google</a>
Run Code Online (Sandbox Code Playgroud)
更新:
对于更复杂的场景,您可以编写一个简单的HTML帮助器方法,如下所示:
public static class ExternalLinkHelper
{
public static MvcHtmlString ExternalLink(this HtmlHelper htmlHelper, string linkText, string externalUrl)
{
TagBuilder tagBuilder = new TagBuilder("a");
tagBuilder.Attributes["href"] = externalUrl;
tagBuilder.InnerHtml = linkText;
return new MvcHtmlString(tagBuilder.ToString());
}
}
Run Code Online (Sandbox Code Playgroud)
只需确保在视图中引用此类的命名空间.
@Html.ExternalLink("Link to Google", "http://google.com")
Run Code Online (Sandbox Code Playgroud)