发现多个类型与名为' Home'的控制器匹配。 (奇怪的错误)

时间:2014-05-10 23:26:31

标签: c# asp.net asp.net-mvc asp.net-mvc-4

我在新的asp.net应用程序上出现此错误

发现多个类型与名为' Home'的控制器匹配。如果为此请求提供服务的路由(' {controller} / {action} / {id}')未指定名称空间来搜索与请求匹配的控制器,则会发生这种情况。如果是这种情况,请通过调用' MapRoute'的过载来注册此路线。采用'命名空间的方法'参数。

' Home'找到了以下匹配的控制器: Contoso.CAMPF.Sample1Web.Controllers.HomeController CAMPF.WebApp.Controllers.HomeController

奇怪的是,我没有事件在任何地方有一个constoso命名空间,我删除它,在过去我做过,但我决定在某些时候更改程序集和命名空间名称。

namespace CAMPF.WebApp.Controllers
{
    public class HomeController : Controller
    {
        [SharePointContextFilter]
        public ActionResult Index()
        {

2 个答案:

答案 0 :(得分:6)

发现错误,因为我更改了命名空间和程序集名称,然后在bin文件夹中旧的dll仍然存在,所以看起来mvc引擎在整个bin文件夹中搜索控制器

答案 1 :(得分:1)

我有同样的问题。事实证明,旧的.ddl文件仍然在bin文件夹中。删除后,一切都很好。基本上,当您重命名命名空间时,它有效地重命名了输出程序集。在构建时,新的.ddls被创建,但旧的.ddls仍然存在。

祝你好运,编码愉快:))))