當您在Visual Studio中創建ASP.NET MVC 2 Web應用程序時,它會爲您提供默認的MVC站點。它顯示2個菜單[主頁]和[關於]。當你將鼠標懸停這些菜單它給你這個網址:ASP.NET MVC站點菜單
- [首頁]本地主機:1234/
- [簡介]本地主機:1234 /首頁/
爲什麼關於主頁下?
我想菜單鏈接像
- [首頁]本地主機:1234/
- [簡介]本地主機:1234 /關於
我怎樣才能做到這一點?
當您在Visual Studio中創建ASP.NET MVC 2 Web應用程序時,它會爲您提供默認的MVC站點。它顯示2個菜單[主頁]和[關於]。當你將鼠標懸停這些菜單它給你這個網址:ASP.NET MVC站點菜單
爲什麼關於主頁下?
我想菜單鏈接像
我怎樣才能做到這一點?
關於在Home下,因爲它是HomeController下的一個操作。
如果您想訪問about/About,請在您的Global.asax中設置新路由。例如:
routes.MapRoute("About", "About", new { controller = "Home", action = "About" }
你有Home
控制器上定義了兩個動作:Index
和About
。索引操作被定義爲該站點的默認操作。爲此,http://localhost:1234
解析爲http://localhost:1234/Home/Index
。您可以設置一個新的途徑來實現:
routes.MapRoute(
"About",
"About",
new { controller = "Home", action = "About", id = UrlParameter.Optional }
);
你有幾個選擇這裏,你既可以單獨地圖路線爲達林和Alexn都出現了,或者你可以做這樣的事情:
routes.MapRoute("Home", "{action}/{id}", new { controller = "Home", action = "index", id = "" });
看看路徑中沒有定義控制器嗎?這應該意味着你可以只說/About
或/SomeOtherAction
。這裏的限制是它會匹配很多路線,並且他們都會去到家庭控制器,除非您在上面添加更多特定的路線。
在任何文件夾下放置都是個人選擇的問題。
如果你想看到的有關文件在不同的文件夾結構,在我看來,這樣做將是
1)中的觀點被稱爲關於創建一個新的文件夾的簡潔的方式。 2)將About.html文件移動到這個文件夾中 3)在Controllers文件夾下創建一個名爲AboutController.cs的新文件 4)找到標籤返回View();在上面創建的文件中,並用返回視圖(「關於」)替換它;
如果您想要在About部分下添加更多文件(例如:about-autor.html,about-fundinghouse.html),您可以繼續將其添加到about文件夾中並在控制器中進行必要的更改以返回相應的觀點。
這樣我就需要按照這個步驟每次我會創建一個新菜單? – coure2011 2010-02-22 09:47:52