2015-04-17 93 views
0

我創建了一個網站,我通過URL是這樣的:如何使靜態URL動態地MVC應用程序

<base href="http://localhost:5423/" /> 

這一切工作正常,爲地方。

,但現在我在主機和部署問題出現在這裏:

同index.vbhtml我用menues這樣的:

<li><a class="home" href="Home/Index">Home</a></li> 
<li class="wish"><a class="wishlist" href="Products/Index" id="wishlist-total">Products</a></li> 
<li><a class="account" href="Home/Contact">Contact Us</a></li> 

現在,如果我與

HttpContext.Current.Request.Url 
嘗試

然後每次加入根路徑就好像我點擊Home時,它顯示正確的第一次:

http://192.168.1.100/Home/Index 

但現在,如果我在同一個環節再次點擊,它再次加入主頁:

http://192.168.1.100/Home/Home/Index 

應該是什麼這樣的解決方案。

問候,

+0

你在哪兒MVC?在MVC中,我們通常通過助手構建鏈接 - 比如@ Url.Action(「ActionName」,「ControllerName」)或者通過@ActionLink助手。 –

+2

那是因爲你錯過了主要的正斜槓 - '「/ Home/Index」'。但不要硬編碼你的網址。使用助手,以便它們始終正確生成。 –

回答

1

您可以使用Url.Action幫手

<li><a class="home" href="@Url.Action("Index", "Home")">Home</a></li> 
<li class="wish"><a class="wishlist" href="@Url.Action("Index", "Products")" id="wishlist-total">Products</a></li> 
<li><a class="account" href="@Url.Action("Contact", "Home")">Contact Us</a></li> 

編輯:

要生成絕對URL嘗試:

Url.Action("Index", "Home", null, Request.Url.Scheme) 
Url.Action("Index", "Products", null, Request.Url.Scheme) 
Url.Action("Contact", "Home", null, Request.Url.Scheme) 
+0

藝術感謝您的reply.i先前嘗試過。看到我得到同樣的問題this.if我點擊家庭然後url是這樣的:http://192.168.1.100/Home/Index和之後,如果點擊聯繫或家裏多次,然後主頁添加到URL每次像這樣:http://192.168.1.100/Home/Home/Index這是什麼解決方案? –

+0

嗨亞歷克斯,我試着編輯部分,但它仍然沒有刪除第一部分。

  • Home
  • Products
  • 如果我傳遞null然後它給我error.please建議here.still我得到錯誤的網址:http:// localhost:5423/Home/Home/Contact –

    相關問題