• ASP.NET MVC Controller与Areas下面的Controller同名的解决办法


    问题重现:

       当项目下:Controller/HomeController.cs时,

      人在创建一个域Test,之后在建一个同名的HomeController: Areas/Test/Controller/HomeController.cs

    运行报错:

    Multiple types were found that match the controller named 'Home'. This can happen if the route that services this request ('{controller}/{action}/{id}/') does not specify namespaces to search for a controller that matches the request. If this is the case, register this route by calling an overload of the 'MapRoute' method that takes a 'namespaces' parameter.

    The request for 'Home' has found the following matching controllers:
    Web.Areas.Test.Controllers.HomeController
    Web.Controllers.HomeController 

     解决办法:

      /Areas/Test/TestAreaRegistration.cs

    代码

    context.MapRoute(
                    
    "Test_default",
                    
    "Test/{controller}/{action}/{id}/",
                    
    new { controller = "Home", action = "Index", id = UrlParameter.Optional },
                    
    new string[] { "Web.Areas.Test.Controllers"}
                );

    /Global.asax

     routes.MapRoute(
                 
    "Home"// Route name
                 "{controller}/{action}/{id}/"// URL with parameters
                 new { controller = "Home", action = "Index", id = UrlParameter.Optional },
                    
    new string[] { "Web.Controllers"}
              );



     

     

    --------------------------------------------------------------------------
    Daniel Chow's Blog - 不管你在哪里,都要有一颗创业的心!
    http://www.cnblogs.com/DanielChow/
  • 相关阅读:
    睿象云-智能运维平台
    leetcode-----53. 最大子序和
    leetcode-----50. Pow(x, n)
    leetcode-----49. 字母异位词分组
    leetcode-----48. 旋转图像
    leetcode-----47. 全排列 II
    leetcode-----46. 全排列
    leetcode-----44. 通配符匹配
    SpringMVC @RequestParam和@RequestBody的区别
    SpringMVC 接受页面传递参数
  • 原文地址:https://www.cnblogs.com/DanielChow/p/1737228.html
Copyright © 2020-2023  润新知