文章出處
文章列表
在使用MVC4.0的時候,難免會遇到在根目錄下的Controllers中添加的控制器名稱可能會跟在Areas中的某個區域下的控制器名稱一樣。這個時候訪問Areas下面的Controller/Action是沒有問題的,但是訪問根目錄下的地址是就會提示:
“
找到多個與名為“Home”的控制器匹配的類型。如果為此請求(“{controller}/{action}/{id}”) 提供服務的路由在搜索匹配此請求的控制器時沒有指定命名空間,則會發生此情況。如果是這樣,請通過調用含有 'namespaces' 參數的 'MapRoute' 方法的重載來注冊此路由。
”
根據錯誤提示,我們需要在默認路由中定義“namespaces”參數的值
routes.MapRoute( name: "Default", url: "{controller}/{action}/{id}", defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }, namespaces: new string[] { "XXXX.WebUI.Controllers" }//解決Controllers與Areas中控制器不能同名問題 );
至此就可以訪問根目錄下的地址了!
文章列表
全站熱搜