具有最新更新的Visual Studio 2013和ASP.NET MVC5 +最新的Web.API程序包。
我收到此错误:
找到了多个与名为“Example”的控制器匹配的类型...
“Feeds”请求已找到以下匹配的控制器:
OldNamespace.Controllers.ExampleController和NewNamespace.Controllers.ExampleController
以前在我的项目中,我有一个名为“OldNamespace.Controllers”的命名空间,并使用“NewNamespace.Controllers”在文件中进行了查找和替换。在查找并替换之后,我清理了解决方案,重建,删除了ASP.NET临时文件,还对项目目录进行了全文搜索,以查找对“OldNamespace”的任何引用,但均未找到。最后,我在文件系统中搜索了名为“OldNamespace ...”的所有DLL,并将其删除,删除了bin和obj目录,然后重新启动了PC。
但是仍然会发生此错误。
最佳答案
检查这些可能的情况
尝试用NewNamespace替换ReplaceAll OldNamespace
如果问题仍然存在,但无法解决,请在routeconfig中添加名称空间
公共类RouteConfig
{
公共静态无效RegisterRoutes(RouteCollection路由)
{
route.IgnoreRoute(“{resource} .axd / {* pathInfo}”);
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
namespaces:new string[]
{
"OldNamespace"
}
);
}
}