命令行中的NUnit v3 alpha:程序集的清单定义与程序集引用不匹配。(来自HRESULT的异常:0x8013100)

命令行中的NUnit v3 alpha:程序集的清单定义与程序集引用不匹配。(来自HRESULT的异常:0x8013100),nunit,nunit-console,Nunit,Nunit Console,我正在尝试从命令行运行NUnit v3 alpha。这是我的命令行: […]\NUnit3\nunit控制台NUnitAlpha3Experimental.exe/framework:net-4.5 起初,我得到了这个错误: 错误和失败无法加载文件或程序集的nunit.framework, 版本=3.0.5378.31152,区域性=中性, PublicKeyToken=2638cd05610744eb'或其依赖项之一。这 程序集由比当前加载的运行时更新的运行时生成 无法加载 然后我编辑了nun

我正在尝试从命令行运行NUnit v3 alpha。这是我的命令行: […]\NUnit3\nunit控制台NUnitAlpha3Experimental.exe/framework:net-4.5

起初,我得到了这个错误:

错误和失败无法加载文件或程序集的nunit.framework, 版本=3.0.5378.31152,区域性=中性, PublicKeyToken=2638cd05610744eb'或其依赖项之一。这 程序集由比当前加载的运行时更新的运行时生成 无法加载

然后我编辑了nunit-console.exe.config以注释.net 2.0

<startup useLegacyV2RuntimeActivationPolicy="true">
  <!-- Comment out the next line to force use of .NET 4.0 -->
  <!--<supportedRuntime version="v2.0.50727" />-->
  <supportedRuntime version="v4.0.30319" />
</startup>
我用4.0和4.5尝试了这些命令行 […]\NUnit3\nunit控制台NUnitAlpha3Experimental.exe/framework:net-4.0 […]\NUnit3\nunit控制台NUnitAlpha3Experimental.exe/framework:net-4.5

以下是我收到的错误消息:

错误和失败无法加载文件或程序集的nunit.framework, 版本=3.0.5378.31152,区域性=中性, PublicKeyToken=2638cd05610744eb'或其依赖项之一。这个 定位程序集的清单定义与程序集不匹配 参考来自HRESULT的异常:0x8013100

然后我尝试编辑nunit-console.exe.config,为.net 4.5添加一个新条目。我试过4.5、4.5.1、4.5.50710、4.5.50938、4.5.50932、4.5.51641,它们都出现在控制面板->程序和功能中,我得到一个windows弹出窗口,要求我安装.Net framework 4.5

编辑:.NETFramework 4.5*的新条目无论如何都不应该起作用。即使我收到错误消息,单元测试也会运行。更多信息请点击此处:


有人能帮我吗?谢谢。

问题似乎是由nunit 3.0中包含的dll的多个版本造成的。每个.net framework版本中都有一个,以及它是如何提供给我的程序集的。更多信息请点击此处: