我决定今天修改一些代码,遇到一个对我没有任何意义的错误。我有一个名为IDatabase
的接口和一个继承它的类,名为Database
。我最初只是将IDatabase
放在与Database
相同的程序集中,但我不喜欢这样,因为它会阻止其他人在没有整个程序集的情况下创建新类型的IDatabase
。我将IDatabase移动到一个名为LibraryInterfaces
的新的独立程序集中,并更改了项目中的所有引用。
项目编译很好,但是当我执行它时,我收到错误:
Could not load type 'Company.Database.IDatabase' from assembly 'Company.Database'.
这对我没有任何意义,因为我将IDatabase
的定义移到了LibraryInterfaces
!我仔细检查了正在运行的文件夹中的文件,文件是否正确。我甚至在Reflector中打开它们,只是为了仔细检查所有引用,这些也是正确的。我还删除了using
语句并完全限定了IDatabase
的所有用法,即使这样做也没有![/ p>
有没有人提供纠正此问题的提示?
答案 0 :(得分:2)
我遇到了类似的问题。删除bin文件夹中的所有内容,清理解决方案并重建。
答案 1 :(得分:2)
您可能已经更改了所有引用,但是其中一些引用依次引用了旧程序集?这是开源项目Refix应该能够在不久之后解决的事情之一(为无耻的插件道歉)。