2011-06-08 107 views
1

我有一個重定向到@ Url.Action(「Index」,「Home」)的按鈕,它是位於包含HTML和cshtml的所有頁面的主菜單的一部分。所以我不知道如何告訴HTML單擊按鈕時重定向到Index cshtml。如何重定向到HTML頁面上的Index.cshtml?

* HTML網頁是網站內容的80%。

*我目前使用ASP.Net MVC 3

問候。

回答

4

如果你想要的是在靜態 HTML頁面鏈接到的HomeControllerIndex動作,一個簡單的HTML鏈接應該做的伎倆:

<a href="/home/index">Home</a> 
+0

我應該使用〜/ home/index,htmls頁面不在mvc視圖的同一級別 – 2011-06-08 15:52:09

+2

'〜/ home/index'不適用於靜態html頁面,'〜'由ASP解析。 NET(MVC)引擎並轉換爲完整的url,但不會在靜態html頁面上進行分析。您必須查看生成的url如何在鏈接的'href'屬性中手動設置。 '@ Url.Action(「Index」,「Home」)產生的url是什麼樣的? – 2011-06-08 15:54:41

2

由於這種問答已經回答只是一些額外的信息走另一條路 - 如果你想告訴你的CSHTML文件重定向到HTML文件除了直接鏈接(或使用/../../SomeFolder)的應用程序內部,你可以使用

 

<a href="@Url.Content("~/Home/Index.html")">Home</a> 
 
-1
var page = HttpContext.Current.Handler as Page; 

Response.Redirect(page.GetRouteUrl("Default", new { Controller = "Home", Action = "Index" }), false);