.net badimageformatexception-哪个程序集有问题
我正在与一个糟糕的例外抗争:.net badimageformatexception-哪个程序集有问题,.net,nunit,.net,Nunit,我正在与一个糟糕的例外抗争: System.BadImageFormatException : Could not load file or assembly 'Bla.Bla.Bla, Version=0.0.0.18329, Culture=neutral, PublicKeyToken=null' or one of its dependencies. 我相当确信Bla.Bla.Bla程序集是正确的(设置为AnyCpu)。它的依赖性也是正确的(只有城堡、核心、城堡、温莎和城堡.WcfIn
System.BadImageFormatException : Could not load file or assembly 'Bla.Bla.Bla, Version=0.0.0.18329, Culture=neutral, PublicKeyToken=null' or one of its dependencies.
我相当确信Bla.Bla.Bla程序集是正确的(设置为AnyCpu)。它的依赖性也是正确的(只有城堡、核心、城堡、温莎和城堡.WcfIntegration)。然而,当我为这个项目运行NUnit测试时,我得到了BadImageFormatException
有没有办法找出导致此异常的程序集?因此我打开了构建警告,并注意到Bla.Bla.Bla程序集上有一条警告,上面写着“处理器体系结构不匹配”。我检查了平台目标,发现是AnyCpu。只是为了好玩,我把它改成了x86,又改回了AnyCpu,然后。。。。成功了 然后我检查了.csproj文件的差异,注意到平台目标已从安腾更改为AnyCpu 因此,这可能是VisualStudio中的一个错误,UI没有显示正确的平台目标 现在,我能找回我生命中的两天吗 更新:我的同事在vs2010中创建了这个解决方案,她再次打开它,在下拉列表中有安腾。我在vs2012上,下拉列表中没有安腾
tl;dr:Classic UI错误:所选值不在下拉列表中,第一个值已被选中。嗯,不,“安腾”不作为.NET平台目标存在。它不存在。这就是抖动的全部意义,如果你的程序实际上运行在安腾上,那么你会自动得到安腾的抖动。不需要额外的配置。将解决方案平台名称与.NET目标平台设置混淆是一个常见错误。两件截然不同的事情。解决方案平台只对非托管项目重要。是的,但该解决方案是意外设置为针对安腾编译的。我们从来没有想过。问题是,我看不出该项目是在vs2012中为安腾设置的,因为下拉列表错误地显示了AnyCpu。