2012-03-31 50 views
0

我使用nopCommerce 2.3並嘗試設置自定義區域,但該區域試圖在運行時使用主應用程序主控制器並爆炸。 nopCommerce已經有一個名爲「Admin」的區域,它被設置爲一個單獨的項目,我只是試圖遵循該體系結構。我創建了一個新的MVC 3應用程序,並刪除了與分析和帳戶註冊相關的所有登錄相關文件和web.config註冊。我創建的區域顯然是註冊到主應用程序,因爲您可以瀏覽它的url路徑。但是,當你訪問它的路徑(http:// mysite/backoffice /)時,它會爆炸,因爲它試圖使用主應用程序中的HomeController.cs文件,而不是我區域程序集中的HomeController.cs(Backoffice.dll )。程序集/名稱空間在我的區域項目和主項目之間完全不同,所以我不知道它爲什麼會混淆。我的註冊是否正確?使用錯誤控制器的MVC 3區域

這是我區登記:

namespace Backoffice 
{ 
    public class BackofficeRegistration : AreaRegistration 
    { 
     public override string AreaName 
     { 
      get { return "Backoffice"; } 
     } 

     public override void RegisterArea(AreaRegistrationContext context) 
     { 
      context.MapRoute(
       "Backoffice_default", 
       "Backoffice/{controller}/{action}/{id}", 
       new { controller = "Home", action = "Index", id = UrlParameter.Optional, area = AreaName }, 
       new[] { "Backoffice.Controllers" } 
      ); 
     } 
    } 
} 

回答