我有一个ASP.NET Web项目,名为" OldProject"。无论出于何种原因,决定将项目及其名称空间重命名为" NewProject"。现在,当网站启动时,它会抱怨模糊的控制器名称:
找到了多个与名为' Admin'的控制器匹配的类型。如果为此请求提供服务的路由(' {controller} / {action} / {id}')未指定名称空间来搜索与请求匹配的控制器,则会发生这种情况。如果是这种情况,请通过调用' MapRoute'的过载来注册此路线。采用'命名空间的方法'参数。
对管理员的请求'找到了以下匹配的控制器:
OldProject.Controllers.AdminController
NewProject.Controllers.AdminController
我搜索了整个解决方案,包括Web项目的csproj
文件,但找不到字符串的单个实例" OldProject"。
如何解决这种错误的歧义?
答案 0 :(得分:1)
如果重命名项目以使程序集的文件名发生更改,则可能会有两个版本的ASP.NET程序集,这将重现此错误。
解决方案是转到bin文件夹并删除旧dll。 (我尝试了#34;重建项目",但是没有删除'所以请确保检查bin以确保它们已经消失了)