2010-07-21 84 views
10

我有一個MVC 2的位置在區域,假設該區域名稱爲{管理員}asp.net mvc的區域默認頁面

的區域和站點工作正常。

我想要做的是爲該區域設置不同的默認頁面。

當我打電話http://webSiteName作品沒有問題

http://webSiteName/Admin我收到錯誤

資源無法找到

我嘗試過了從ASP.NET MVC 2 RC 2 returns Area-specific controller when no area specified 的解決方案,但沒有運氣。

我也試過

routes.MapRoute(
       "Admin",           
       "{controller}/{action}/{id}",        
       new { controller = "AdminHome", action = "index" }, 
       new[] { "Web.Areas.Admin.Controllers" } 
       ); 

routes.MapRoute(
       "Admin",          
       "Admin",        
       new { controller = "AdminHome", action = "index" }, 
       new string[] { "Web.Areas.Admin.Controllers" } 
       ); 

,但我仍然得到資源無法找到。

我在做什麼錯?

+0

如果它對您有幫助,請將其標記爲已接受。 – 2010-07-21 15:32:45

回答

14

試試這個。確保它在/Areas/Admin/AdminAreaRegistration.cs當您的區域被命名爲Admin

public override void RegisterArea(AreaRegistrationContext context) 
    { 
     context.MapRoute(
      "Admin_default", 
      "Admin/{controller}/{action}/{id}", 
      new { controller = "AdminHome",action = "Index", id = "" } 
     ); 
    } 

您不需要添加任何東西到您的Global.asax

+0

感謝馬丁,終於比我想象的容易了。 :) – StrouMfios 2010-07-23 06:23:42