2011-01-11 31 views
5

我正在開發由VS2010提供的樣品ASP .NET MVC模板代碼。我第一次運行代碼時沒有添加任何內容,index.aspx頁面被調用,這是預期的。但由於某些原因,我添加了一個login.aspx,然後意外地將其設置爲啓動頁面。現在,當我運行應用程序時,默認啓動網址看起來像http://localhost/Views/login.aspx。我想這是不是一個有效的MVC路由路徑,我得到所請求的資源無法找到錯誤。ASP .NET MVC調用默認的控制器和VS設置一個啓動頁

我不知道如何恢復回來,並確保默認的../home/index被調用。任何人都可以對此有所瞭解嗎?還應該不像我們在asp .net webforms中那樣設置啓動頁面?

回答

10

簡短的回答:你做了什麼,你被允許在ASP.NET的WebForms做,但它不能在ASP.NET MVC工作一樣。要還原你做了什麼,請打開項目屬性(從項目菜單),進入「網絡」選項卡。將開始操作設置爲當前頁面而不是特定頁面。現在,當您運行項目時,您將能夠像以前一樣查看Home/Index頁面。

要在MVC正確做到這一點,你需要配置在Global.asax中的路由。你會發現類似下面的條目:

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

你可以看到,當你沒有指定一個控制器和行動,它關係到家庭/索引。您可以在那裏更改控制器名稱和操作名稱,它將默認爲您在那裏提到的操作。只要確保您有您指定有控制的相關動作。

+1

這是有效的。謝謝拉希德。需要探索所有這些設置,沒有這些事情會變得瘋狂! :) – SARAVAN 2011-01-12 05:34:52

相關問題