2015-05-04 71 views
0

我正在開發VS2012 ASP.NET MVC解決方案。在我的控制器上使用ActionLink訪問外部URL

如果我需要訪問我知道我可以繼續像這樣的外部URL:

<a href="http://www.myurl.com" target="_blank">Click me</a> 

是否有可能代替傳統的錨標記使用的ActionLink的?

喜歡的東西:

@Html.ActionLink("Click me", "MyAction", "MyController", null, new { target="_blank" }); 

如果這是feasable,我有什麼對控制器打開外部URL的行動裏面的代碼?

謝謝。

+0

有什麼意思嗎? – tmg

回答

0

ActionLink不會在你的情況下工作,因爲它不支持絕對網址。您可以實現新的擴展名:

public static class URLLinkHelper 
{ 
    public static MvcHtmlString URLLink(this HtmlHelper htmlHelper, string linkText, string url) 
    { 
     TagBuilder tagBuilder = new TagBuilder("a"); 
     tagBuilder.Attributes["href"] = url; 
     tagBuilder.InnerHtml = linkText; 
     return new MvcHtmlString(tagBuilder.ToString()); 
    } 
} 

在您的視圖中添加此類命名空間的引用。

@Html.URLLink("Link to yahoo", "http://yahoo.com") 
+0

感謝您的解釋。非常具有啓發性。 – Bronzato

+0

@Bronzato希望它回答你的問題 –