天天看點

MVC添加Area出現“到多個與名為“Home”的控制器比對的類型的解決方法”

建立MVC項目,添加HomeController,然後添加名字為Admin的Area後,建立HomeController。這個時候,運作項目會出現以下錯誤:

MVC添加Area出現“到多個與名為“Home”的控制器比對的類型的解決方法”

解決辦法如下:

打開網址下面的HomeController,其命名空間如圖:

MVC添加Area出現“到多個與名為“Home”的控制器比對的類型的解決方法”

我們修改RouteConfig.cs檔案,給路由加上命名空間,代碼如下:

MVC添加Area出現“到多個與名為“Home”的控制器比對的類型的解決方法”

同理,我們看到Admin這個area的命名空間為MvcArea.Areas.Admin.Controllers,我們修改AdminAreaRegistration.cs檔案,加上命名空間,代碼如下:

MVC添加Area出現“到多個與名為“Home”的控制器比對的類型的解決方法”

這樣改完以後,項目就可以正常運作了,這裡提醒一下,如果直接輸入Admin提示如下錯誤:

MVC添加Area出現“到多個與名為“Home”的控制器比對的類型的解決方法”

這裡是因為我們的路由沒有配置預設的controller,我們在路由配置中加上controller = "Home"即可,上圖中已經加上,大家可以對比參考一下。

如果我想修改背景的登入位址,直接修改"Admin/{controller}/{action}/{id}"這裡面的Admin參數即可。