我将我的项目从MyProjectName重命名为MyNewProjectName.我对解决方案进行了完整的查找/替换,并更改了测试项目.在Default.aspx.cs中,我得到一个InvalidOpterationException
"控制器名称'Home'在以下类型之间不明确:MyNewProjectName.Controllers.HomeController MyProjectName.Controllers.HomeController."
我该如何解决这个问题?谢谢
您是否尝试过重建(右键单击项目,然后选择"重建")?同时检查bin以确保只有具有新名称的程序集.另外,仔细检查项目属性以验证是否输出了程序集的名称.如果您不确定输出的程序集的名称是什么,请从bin中删除所有dll并重建.
您需要检查MVC Web项目中的/ bin文件夹,并删除其中的所有内容并执行新的构建,或删除旧的DLL(MyProjectName.dll).
ASP.Net MVC运行时使用反射来确定必须根据路由信息将请求传递给哪个控制器,并且它找到两个符合条件的控制器(具有相同的名称),并且每个控制器都在不同的程序集中.这就是你得到例外的原因.
执行清理似乎没有清除bin文件夹.所以你必须手动删除该文件.
至于我自己,我在View文件夹的web.config中引用,一旦它被改变一切正常!