困扰两个月之久的问题,心里默念无数遍救救孩子吧。
试过网上无数种别人成功的办法我都不行,今天奇思妙想了一下终于解决了,太兴奋了,发个小作文纪念一下。
【情况描述】
自己电脑写的A.dll调用自己电脑写的B.dll是可以运行的,但是调用别人电脑写的C.dll,就会出现如下错误。
我要了C.dll的源码在我电脑上跑也是可以运行的。
然后我用我的电脑把别人发我的C.dll的源码重新生成一下重新用A.dll调用,还是出现同样的错误。
【错误提示】
未能加载程序集"XXX"或它的一个依赖项。该模块应包含一个程序集清单。
【网友提供的解决办法】PS大家可以挨个试过
(1)同框架(framework);
(2)同平台(X64还是X86);
(3)同版本(assembly或者config修改Version);
(4)C.dll的“复制到本地”属性应该为“true”;
(5)重启vs;
(6)重启电脑;
(7)重装框架(麻烦,跳过);
(8)重装vs(磨叽,跳过);
(9)应用程序池(不适合我,跳过);
(10)强名称(麻烦,跳过,可能有用,谁帮忙测试一下);
【我的解决】
重命名:把C.dll所有的空间名称、解决方案名称、程序集名称全部重命名一下……原来保持一致的还是要保持一致。然后重新生成再调用就有了,有了,有了。。。
对,就是这么简单这么坑。