簡體   English   中英

在我的MVC 3 .NET應用程序中,如何在網站啟動時更改地址欄中的URL?

[英]In my MVC 3 .NET application, how do I change the URL in the address bar on website startup?

當我開始調試MVC Web應用程序時,地址欄中的URL是以下內容:

http://localhost:#####/

這稱為“歸屬​​/索引”路由。 當我像這樣在地址欄中開始調試時 ,有沒有辦法包含Home / Index部分?

http://localhost:#####/Home/Index

我不太明白為什么地址首先不顯示Home / Index部分。 有人可以澄清嗎?

只需在Project | Properties中進行設置:

在此處輸入圖片說明

選擇特定頁面並將其設置為: Home/Index

但是,請考慮一下真正的訪客將如何來到您的網站,以及您想發生什么。

我不太明白為什么地址首先不顯示Home / Index部分。 有人可以澄清嗎?

原因是在MVC的設計中,作者最有可能認為最好隱藏無用的信息。

例如,這兩個都使用默認路由在同一控制器上運行相同的動作:

http://localhost:xxxx/
http://localhost:xxxx/Home/Index

第二個優點是什么? 更長嗎

因此,默認情況下,如果路由匹配或部分匹配,則會將其從網址中刪除。

對於默認控制器(帶有AboutController),以下網址也相同:

http://localhost:xxxx/About
http://localhost:xxxx/About/Index

同樣,第二個優點是什么?

您需要通過以下方式在RegisterRoute方法中注冊路由:

routes.MapRoute(
            "Default",                                              // Route name
            "{controller}/{action}/{id}",                           // URL with parameters
            new { controller = "Home", action = "Index", id = "" }  // Parameter defaults
        );

幾乎可以肯定,您在global.asax.cs中設置了默認路由

項目屬性的“ Web”選項卡中分配“ 開始URL” (“ 絕對” )或“ 特定頁面” (“ 相對” )。

開始操作 -> 開始URLhttp://localhost:#####/Home/Index

第二個沒有優勢。 第二個路徑被用作第一個的默認路徑。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM